Karate DSL: API Automation and Performance from Zero to Hero

API Automation Testing, Performance and Load Testing with Karate DSL and Gatling framework. API testing made simple.

4.61 (2956 reviews)
Udemy
platform
English
language
Software Testing
category
instructor
13,061
students
7.5 hours
content
Jan 2024
last update
$74.99
regular price

What you will learn

How to automate API testing

Performance and Load testing with Gatling

JSON Manipulations

Test-Data Generation

Creating Strong Assertions

User-Flow Simulation using APIs

Description

Karate DSL - a framework for API automation testing, Performance, and Load testing. This framework is running on Java and using Apache HTTP client to perform Http connections. For the performance testing, Karate DSL has a very nice integration with the Gatling framework.

Karate has its own scripting language (DSL - Domain Specific Language), which is pretty simple and can be picked up by people who don't have coding experience. It looks like the Cucumber framework, but it only looks like that. The framework has a predefined set of scripting commands for any operation you might need during interaction with APIs. Also, the framework has native support of JAVA and JavaScript programming languages, so you can create any custom methods and use it in Karate if you need it.

The key advantages of the framework:

  • Own easy scripting language. You don't need to have coding skills to start writing tests

  • Native JavaScript support and JSON objects (forget about parsers)

  • Very powerful assertions and JSON schema validation

  • Parallel execution (it's very fast)

  • Integration with Gatling for Performance testing

What you will learn:

  • Basics: what is API and JSON objects. You ll have a clear understanding of the concept of how API works and how to work with JSON objects

  • How to set up and configure Karate framework from scratch

  • How to perform GET, POST, PUT, DELETE requests

  • How to make powerful assertions for API responses, traverse through JSON objects, fuzzy matching assertions, and JSON schema validation

  • How to chain API calls, re-use API response to form new API request

  • How to generate random test data, use this test data in API requests

  • How to handle authorization headers, access tokens

  • Before/After hooks, parallel test execution, conditional testing, data-driven testing

  • How to use Karate scripts for Performance and Load Testing with Gatling framework

Karate DSL is a really great framework for API Automation and my Number 1 choice.

Content

Introduction

Introduction
Karate VS Rest Assured

Basics

What is JSON
What is API

Setup

Environment Setup
Clone Test Project
Karate Framework Setup
Karate Framework Overview

API Automation

First GET Request
Url and Path
Simple Assertions
First POST Request
Runner Configuration and Tags
DELETE Request
Calling Other Feature
Environment Variables
Embedded and Multi-Line Expressions
Assertions
Fuzzy Matching
Schema Validation
Test-Data Generator
Data Driven Scenario
Reading Other Files
Mistakes and Debugging
Homework

Advanced Features

Before and After Hooks
Parallel Execution
Cucumber Reporter
Conditional Logic
Retry and Sleep
JSON Transforms
Type Conversion

Performance Testing with Gatling

Gatling Setup
First Simulation
Karate Protocol
User Think Time
Simulation Setup
Feeder From File
Custom Feeder
Name Resolver
Dispatcher Configuration

Conclusion

Where to Find More Information?
Final Words

Screenshots

Karate DSL: API Automation and Performance from Zero to Hero - Screenshot_01Karate DSL: API Automation and Performance from Zero to Hero - Screenshot_02Karate DSL: API Automation and Performance from Zero to Hero - Screenshot_03Karate DSL: API Automation and Performance from Zero to Hero - Screenshot_04

Reviews

Ihor
November 6, 2023
Good course, good explanation, some additional tips how to build a good automation framework with this tool would make this course great, like good practises what and when to take into separate helpers and so on
Sushil
August 21, 2023
This tool is in very high demand , before this course I was ignorant of Karate, now I feel pretty confident in karate framework. thank you all
Edgardo
August 16, 2023
Fue una muy grata experiencia, siento que realmente el contenido me ayudó mucho a comprender karate desde cero a un nivel en donde me puedo desempeñar de forma muy eficiente en mi trabajo. Las instrucciones fueron precisas, y cuando hice preguntas, estas fueron respondidas de forma rapida.
Abhitosh
August 10, 2023
Thank you very much Artem for such a great course. It really made me zero to hero in Karate-Gatling combo. I recommend this course who want to learn API automation with Karate. However non programming users like me can be somewhat overhlemed in few topics like data generation, data driven scenarios etc. where Java programming is used. I have couple of doubts: 1) If Karate can ne integrated with Jenkins (CI/CD)? 2) In performance testing part, only 1 .feature file is included in the test. How to execute performance tests if there are multiple .feature files (say 5)
Pruthvi
August 9, 2023
Very simple way of teaching and easy to understand, I was not aware of JSON. Now I got good knowledge.
Anjan
July 24, 2023
Hoping little more Practical examples than the images, but its just a start lets see how it goes.. rating so far..
Rishabh
June 25, 2023
The course content is really good and all the topics are explained in very simple and effective manner.
Renzo
June 22, 2023
These Course is really complete and explain step by step all the most important topics about Karate. A hundred percent recommended!
Adefabi
June 16, 2023
Great course with a great explanation. Thanks for giving me a solid start to Software engineering testing
Paolla
June 13, 2023
This course helped me a lot. The course structure is very organized, and the teacher has a very good methodology to teach - everything is explained in detail, and focused in the practice scenarios, with real life examples. Artem was always there to answer my questions, and I could see that he put real effort to help me debug my own project to see why it was causing some errors (not many teachers would do that for you!). I feel prepared to work with KarateDSL, and motivated to practice even more. Thanks again, Artem.
Bruno
June 12, 2023
I really appreciate the complete overview from project setup and management, walking through the use of docker for test execution, combining karate with gatling for emulating virtual users executing the actions previous built in the karate scenarios. A few details between lessons were missing but with some debug and positive mindset its possible to overcome and move on.
Alvaro
May 8, 2023
The course is one of the most complete I have seen and the way of explaining it is very pleasant. Thank you
Yevhenii
April 24, 2023
Great examples and explanation! Great to get started as well it would be great for those who already have some experience to see some praktical workaround
Daniel
March 26, 2023
It has everything I needed to make the jump from Postman to Karate, with each class clearly explaining each function and providing real-time applications. While I didn't use the self-made project provided in this course, everything taught in it worked fine in the tests I have already conducted in my job.
Everton
March 10, 2023
Awesome course!! i'm learning a lot with this course and applying in my project on here in Brazil! congratulations!!!! \o/

Charts

Price

Karate DSL: API Automation and Performance from Zero to Hero - Price chart

Rating

Karate DSL: API Automation and Performance from Zero to Hero - Ratings chart

Enrollment distribution

Karate DSL: API Automation and Performance from Zero to Hero - Distribution chart
3488228
udemy ID
9/10/2020
course created date
9/21/2020
course indexed date
Bot
course submited by