Need advice about which tool to choose?Ask the StackShare community!
Karate DSL vs Postman: What are the differences?
Karate DSL: Open Source Web-Services Test Automation Framework. Combines API test-automation, mocks and performance-testing 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 for speed - which is critical for HTTP API testing; Postman: Only complete API development environment. Postman is the only complete API development environment, used by nearly five million developers and more than 100,000 companies worldwide.
Karate DSL belongs to "Testing Frameworks" category of the tech stack, while Postman can be primarily classified under "API Tools".
Some of the features offered by Karate DSL are:
- Native support for both JSON and XML
- Powerful payload assertions with "deep-equals"
- Data-driven testing
On the other hand, Postman provides the following key features:
- Compact layout
- HTTP requests with file upload support
- Formatted API responses for JSON and XML
"Easy CI integration via cross-platform executable / CLI" is the top reason why over 2 developers like Karate DSL, while over 464 developers mention "Easy to use" as the leading cause for choosing Postman.
Karate DSL is an open source tool with 2.12K GitHub stars and 526 GitHub forks. Here's a link to Karate DSL's open source repository on GitHub.
From a StackShare Community member: "I just started working for a start-up and we are in desperate need of better documentation for our API. Currently our API docs is in a README.md file. We are evaluating Postman and Swagger UI. Since there are many options and I was wondering what other StackSharers would recommend?"
I use Postman because of the ease of team-management, using workspaces and teams, runner, collections, environment variables, test-scripts (post execution), variable management (pre and post execution), folders (inside collections, for better management of APIs), newman, easy-ci-integration (and probably a few more things that I am not able to recall right now).
I recommend Postman because it's easy to use with history option. Also, it has very great features like runner, collections, test scripts runners, defining environment variables and simple exporting and importing data.
I use Swagger UI because it's an easy tool for end-consumers to visualize and test our APIs. It focuses on that ! And it's directly embedded and delivered with the APIs. Postman's built-in tools aren't bad, but their main focus isn't the documentation and also, they are hosted outside the project.
Postman supports automation and organization in a way that Insomnia just doesn't. Admittedly, Insomnia makes it slightly easy to query the data that you get back (in a very MongoDB-esque query language) but Postman sets you up to develop the code that you would use in development/testing right in the editor.
Pros of Karate DSL
- Easy CI integration via cross-platform executable / CLI11
- Easy for even non-programmers to get started9
- Simple and meaningful asserts for large responses9
- Data-driven tests that can even use JSON or CSV sources7
- Easy parameterized configuration / custom variables5
- Very fast api testing tool5
- Comprehensive documentation and examples5
- Powerful and flexible payload assertions4
- Simple, concise, readable and maintainable tests4
- Easy re-use of JSON or JS / Java logic across tests4
- IDE support - IntelliJ, Eclipse & Visual Studio Code4
- Best option for testing GraphQL3
- Java-interop so you never "hit a wall" in the framework3
- Simple yet flexible Environment Switching built-in2
- Optionally mix re-usable JavaScript logic into scripts1
- Parallel Execution with Reports Aggregated1
- Active, Responsive community on Stack Overflow1
- Re-use functional tests as performance tests1
- Super simple API mocking, within the firewall1
- XML support, not just JSON1
- Developer-friendly collaboration via standard SCM / Git1
- Rich HTML reports with HTTP logs in-line1
- Great Developer-Experience - Debug UI, HTML reports1
- Websockets support1
- Rest assured0
Pros of Postman
- Easy to use489
- Great tool369
- Makes developing rest api's easy peasy276
- Easy setup, looks good156
- The best api workflow out there144
- History feature53
- It's the best53
- Adds real value to my workflow44
- Great interface that magically predicts your needs43
- The best in class app35
- Can save and share script12
- Fully featured without looking cluttered10
- Global/Environment Variables8
- Collections8
- Option to run scrips8
- Shareable Collections7
- Dead simple and useful. Excellent7
- Dark theme easy on the eyes7
- Great integration with newman6
- Awesome customer support6
- Simple5
- The test script is useful5
- Documentation5
- Saves responses4
- Easy as pie4
- Makes testing API's as easy as 1,2,34
- This has simplified my testing significantly4
- API-network3
- Mocking API calls with predefined response3
- I'd recommend it to everyone who works with apis3
- Runner2
- Easy to setup, test and provides test storage2
- Postman Runner CI Integration2
- Graph2
- Now supports GraphQL2
- Continuous integration using newman2
- Pre-request Script and Test attributes are invaluable2
- <a href="http://fixbit.com/">useful tool</a>1
Sign up to add or upvote prosMake informed product decisions
Cons of Karate DSL
- Ode support becomes very time consuming and expensive b1
- Finding errors in code is not easy1
- There is no IntelliSense support in IDE1
- Karate uses its own scripting language1
- Complex folder structure, without a defined pattern1
- Confusing report: Summarized by steps and not by featur1
Cons of Postman
- Stores credentials in HTTP10
- Bloated features and UI9
- Cumbersome to switch authentication tokens8
- Poor GraphQL support7
- Expensive5
- Not free after 5 users3
- Can't prompt for per-request variables3
- Import swagger1
- Support websocket1
- Import curl1