What is Karate DSL?
Who uses Karate DSL?
Karate DSL Integrations
Why developers like Karate DSL?
Here are some stack decisions, common use cases and reviews by companies and developers who chose Karate DSL in their tech stack.
Karate DSL is extremely effective in those situations where you have a microservice still in development, but the "consumer" web-UI dev team needs to make progress. Just create a mock definition (feature) file, and since it is plain-text - it can easily be shared across teams via Git. Since Karate has a binary stand-alone executable, even teams that are not familiar with Java can use it to stand-up mock services. And the best part is that the mock serves as a "contract" - which the server-side team can use to practice test-driven development.
As the maintainer of the Karate DSL open-source project - I found Travis CI very easy to integrate into the GitHub workflow and it has been steady sailing for more than 2 years now ! It works well for Java / Apache Maven projects and we were able to configure it to use the latest Oracle JDK as per our needs. Thanks to the Travis CI team for this service to the open-source community !
Karate DSL's features
- Native support for both JSON and XML
- Powerful payload assertions with "deep-equals"
- Data-driven testing
- Easy even for non-programmers
- Test-doubles or HTTP mocking built-in
- Re-use test scripts as performance-tests
- Environment switching
- Comprehensive reports, supported by all CI tools