Skip to content

Commit

Permalink
minor doc edits
Browse files Browse the repository at this point in the history
  • Loading branch information
ptrthomas committed Oct 19, 2018
1 parent 45552e4 commit 839bdf3
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@

Karate is the only open-source tool to combine API test-automation, [mocks](karate-netty) and [performance-testing](karate-gatling) into a **single**, *unified* framework. The BDD syntax popularized by Cucumber is language-neutral, and easy for even non-programmers. Besides powerful JSON & XML assertions, you can run tests in parallel - which is critical for HTTP API testing.

With Karate, you can script a sequence of calls to any kind of web-service and assert that the responses are as expected. You can quickly build complex request payloads, traverse data within the responses, and chain data from responses into the next request. Karate's payload validation engine can perform a 'smart compare' (deep-equals) of two JSON or XML documents, and you can even ignore dynamic values if needed.
You can quickly build complex request payloads, traverse data within the responses, and chain data from responses into the next request. Karate's payload validation engine can perform a 'smart compare' (deep-equals) of two JSON or XML documents, and you can even ignore dynamic values if needed.

Running tests and generating reports is just like any standard Java project. But there's also a [stand-alone executable](karate-netty#standalone-jar) for teams not comfortable with Java. You write tests in a **simple**, *readable* syntax - carefully designed for HTTP, JSON, GraphQL and XML.

Expand Down Expand Up @@ -184,6 +184,7 @@ And you don't need to create additional Java classes for any of the payloads tha
<a href="karate-mock-servlet">Mock Servlet</a>
| <a href="karate-netty">Test Doubles</a>
| <a href="karate-gatling">Performance Testing</a>
| <a href="karate-core">UI Testing</a>
| <a href="https://github.com/intuit/karate/wiki/Karate-UI">Karate UI</a>
| <a href="#comparison-with-rest-assured">Karate vs REST-assured</a>
| <a href="#cucumber-vs-karate">Karate vs Cucumber</a>
Expand Down Expand Up @@ -217,7 +218,9 @@ And you don't need to create additional Java classes for any of the payloads tha
* Simple plug-in system for [authentication](#http-basic-authentication-example) and HTTP [header management](#configure-headers) that will handle any complex, real-world scenario
* Future-proof 'pluggable' HTTP client abstraction supports both Apache and Jersey so that you can [choose](#maven) what works best in your project, and not be blocked by library or dependency conflicts
* Option to invoke via a [Java API](#java-api), which means that you can easily [mix Karate into existing Selenium / WebDriver test-suites](https://stackoverflow.com/q/47795762/143475).
* [Cross-browser Web, Mobile and Desktop UI automation](karate-core) (experimental) so you can test (and even perf-test) all layers of your application with the same framwework
* [Save significant effort](https://twitter.com/ptrthomas/status/986463717465391104) by re-using Karate test-suites as [Gatling performance tests](karate-gatling) that deeply assert that server responses are OK under load
* Gatling integration can even test [*any* Java code](https://github.com/intuit/karate/tree/master/karate-gatling#custom) which enables being able to test non-HTTP protocols such as [gRPC](https://thinkerou.com/karate-grpc/)
* [API mock server](karate-netty) for test-doubles that even [maintain CRUD 'state'](https://hackernoon.com/api-consumer-contract-tests-and-test-doubles-with-karate-72c30ea25c18) across multiple calls - enabling TDD for micro-services and [Consumer Driven Contracts](https://martinfowler.com/articles/consumerDrivenContracts.html)
* [Mock HTTP Servlet](karate-mock-servlet) that enables you to test __any__ controller servlet such as Spring Boot / MVC or Jersey / JAX-RS - without having to boot an app-server, and you can use your HTTP integration tests un-changed
* Comprehensive support for different flavors of HTTP calls:
Expand Down

0 comments on commit 839bdf3

Please sign in to comment.