Top 10 Most Popular API Testing Tools

CT
4 min readNov 25, 2017

--

It seems as if APIs are popping up everywhere these days. While this isn’t a bad thing, it does mean that testing professionals need to have a better understanding of how to interact with these APIs. In this post, I’m going to list TEN most popular tools used for API testing and documentation.

cURL Client for URLs (or cURL) is a software project comprised of two development efforts — cURL and libcurl.
cURL is a command-line tool for getting or sending files using URL syntax. Since cURL uses libcurl, it supports the same range of common Internet protocols that libcurl does.
libcurl is a free, client-side URL transfer library with support for a wide range of protocols. libcurl is portable, thread-safe, feature rich, and well supported on virtually any platform. It is probably the most popular C-based, multi-platform file transfer library in use.
cURL is a command-line tool for getting or sending files using URL syntax. Since cURL uses libcurl, it supports the same range of common Internet protocols that libcurl does.

DHC A tool to interact with REST services. It’s an API testing tool that functions from within a Web browser as a Chrome Web app. It aims to make your user experience better, save you precious time when debugging REST calls, and allow you to share your requests with other people. DHC also offers integration with Maven and Jenkins. Plugins allow test scenarios to be included in continuous delivery and continuous integration workflows.

Postman: A Google Chrome app for interacting with HTTP APIs. It presents you with a friendly GUI for constructing requests and reading responses. The people behind Postman also offer an add-on package called Jetpacks, which includes some automation tools and, most crucially, a Javascript testing library.
One big advantage of using Postman is that it runs on your local machine which allows you to control your own data. Some organizations have security restrictions which may prevent using a fully hosted option. Postman also supports running tests in a continuous integration pipeline using Newman.

Dredd A CLI NodeJS application which looks at every Request and Response documented in your API Blueprint file and treats it like an integration test. The API Blueprint file is put into the git repo by Apiary meaning it can be updated in pull requests along with the code that is being changed, which makes CI integration much easier. API Blueprint is the Markdown-based format used by Apiary to create their API documentation

Swagger A tool for creating RESTful API documentation formatted in JSON or YAML. Most web applications support RESTful APIs, but — unlike SOAP APIs — REST APIs rely on HTTP methods and lack a Web Services Description Language (WSDL) equivalent to define request and response structures between consumers and providers. Without an adequate contract service, many organizations use wiki pages to document API usage. Swagger help you create your API documents easily and ensure that they conform to the OpenAPI spec.

Karate A testing framework which uses a BDD, or Behavior-Driven Development, domain-specific language for defining API tests. Karate is built on top of the Cucumber-JVM which should make it familiar to anyone used to using Cucumber for BDD tests.
Karate was released as an open-source tool by Intuit. The tool is designed to be used for automated API testing and has all the required features to make API testing a breeze and actually enjoyable.

Chakram A REST API testing framework designed to perform end to end tests on JSON REST endpoints. Chakram uses a BDD style syntax which is written in Javascript and offers a comprehensive set of HTTP assertions and hooks for extending test behavior.
Chakram is based on node.js and uses chai. js and mocha for writing tests. It is easy to learn and tests can be written quickly. You can write tests using javascript promises. It is open source and freely available over github.

Frisby A REST API testing framework built on Node.js and Jasmine (A BDD style test-runner) that makes testing API endpoints simple, easy, and fast. Frisby.js API framework makes it incredibly simple for you to test against your API.

Hippie A simple Javascript DSL for testing APIs. It supports a clean assertion syntax, middlewares for extending test behavior, and the ability to print clean reports with diffing capabilities.
Hippie has an extremely clean API and makes it dead simple to write standalone scripts you can automate in your CI / CD pipeline before or after deployments. Hippie also has another package specifically designed to test APIs with a Swagger definition called hippie-swagger.
For some examples, check out the Hippie GitHub repo.
Hosted tools
Assertible An API testing tool that focuses on reliability and automation. Assertible supports validating HTTP responses with turn-key assertions such as JSON Schema validation and JSON Path data integrity checks.
One major advantage of Assertible is it’s support for automating API tests through each step of a continuous integration and delivery pipeline. It has support for running API tests after deployments and integrates with familiar tools like GitHub and slack.

--

--