What you'll 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
KarateDSL - 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
KarateDSL is a really great framework for API Automation and myNumber 1 choice.