Comprehensive API Testing Tools You Need to Know in 2018
Learn about the features of ten top API testing tools to help you implement automated API testing as part of a CI/CD development process.
Join the DZone community and get the full member experience.Join For Free
API testing (Application Programming Interface Testing) is a type of software testing which focuses on determining if the developed APIs meet the expectations regarding functionality, reliability, performance, and security of the application.
The interest in API testing has been growing steadily over the last couple years, according to Google Trends. Research by Smartbear of over 5,000 software professionals in 2017 showed API testers automating more than 50% of their tests and expected the numbers to grow by 30% (from 59% to 77%) in the next two years. 80% of survey participants reported they were responsible for testing APIs.
Having the right process, tool, and solution for API test automation is more critical than ever. With the shift-left trend, API testing is more than just a quality control solution, but a crucial component of a successful CI/CD deployment.
This article will provide a summary of the top API testing tools, both open-source and commercial, that testing teams can select to suit their needs. SoupUI, Katalon Studio, and Postman are the top-three tools in the list.
SoapUI is a headless functional testing tool dedicated to API testing, allowing users to test REST and SOAP APIs and web 2ervices easily.
Using SoapUI, users can get the full source and build the preferred features, plus these abilities:
- Create tests quickly and easily with drag-and-drop and point-and-click
- Quickly create custom code using Groovy
- Powerful data-driven testing: data loaded from files, databases, and Excel so that you can simulate how consumers interact with the APIs
- Create complex-scenarios and support asynchronous testing
- Reusability of scripts: load tests and security scans can be reused for functional test cases in just a few steps
Pricing: Free - $659/year
2. Katalon Studio
Katalon Studio is a free test automation tool for API, Web, and Mobile applications. Initially built for Web UI testing, it emerges as a leading tool for API/Web services testing, positioning itself as a comprehensive solution for both developers and testers to meet their testing needs.
The capability to combine UI and Business levels (API/Web services) for different environments (Windows, Mac OS, Linux) has been considered an advantage of Katalon Studio, making it as a unique tool among the top three.
Katalon Studio supports SOAP and REST requests with various types of commands (GET, POST, PUT, DELETE) and parameterization capabilities.
- Support combination test between UI and API verification.
- Support testing both SOAP and REST requests.
- All-in-one solution by supporting API, WebUI, and Mobile testing.
- Hundreds of built-in keywords for creating test cases.
- Support one of the most powerful assertion library, AssertJ to create fluent assertion with BDD style.
- Support data-driven approach.
- Can be used for both automated and exploratory testing.
- Suitable for both pros and non-techies.
Being originally a Chrome browser plugin, Postman now extends their solution with a native version for both Mac and Windows.
Postman is a good choice for API testing for those who don’t want to deal with coding in an integrated development environment using the same language as the developers.
- Easy-to-use REST client
- Rich interface which makes it easy to use
- Can be used for both automated and exploratory testing
- Can be run on Mac, Windows, Linux, and Chrome apps
- Integrations like support for Swagger and RAML formats
- Has Run, Test, Document, and Monitoring features
- Doesn’t require you to learn a new language
- Enables users to easily share knowledge with the team as they can package up all the requests and expected responses, then send them to their colleagues.
Pricing: Free - $21/user/month
4. Tricentis Tosca
Tricentis Tosca is a continuous testing platform for Agile and DevOps. Benefits of Tricentis Tosca include
- Supports an array of protocols: HTTP(s) JMS, AMQP, Rabbit MQ, TIBCO EMS, SOAP, REST, IBM MQ, and NET TCP.
- Integrates into the Agile and DevOps cycle
- Maximizes reuse and maintainability with model-based test automation
- API tests can be used across mobile, cross-browser, packaged apps, etc…
- Achieves sustainable automation with new technology
- Reduces the time of regression testing
Pricing: Contact Sales
Apigee is a cross-cloud API testing tool, allowing users to measure and test API performance and supports APIs built using other editors, like Swagger.
- Allows the design, monitoring, deployment, and scaling of APIs
- Identify performance issues by tracking API traffic, error rates, and response times
- Easily create API proxies from the OpenAPI Specification and deploy them in the cloud
- Cloud, on-premise, or hybrid deployment model on a single code base
- PCI, HIPAA, SOC2, and PII for apps and APIs
- Purpose-built for digital business and the data-rich mobile-driven APIs and apps that power it
Pricing: Free trial - $2,500/month
JMeter (open-source) is widely used for functional API testing, although it was actually created for load testing.
- Supports replaying of test results
- Automatically work with CSV files, allowing the team to quickly create unique parameter values for the API tests
- Users can include API tests in CI pipelines thanks to the integration between JMeter and Jenkins
- It can be used for both static and dynamic resources performance testing
REST-assured is an open-source, Java domain-specific language that makes testing REST services simpler.
- A bunch of baked-in functionalities; users don’t have to code things from scratch
- Integrates seamlessly with the Serenity automation framework so that users can combine the UI and REST tests all in one framework that generates awesome reports
- Supports BDD Given/When/Then syntax
- Users don’t necessarily need to be an HTTP expert
Assertible is an API testing tool which concentrates on automation and reliability.
- Support for automating API tests through each step of a continuous integration and delivery pipeline
- Support for API tests after deployments and integrates with familiar tools like GitHub, Slack, and Zapier
- Supports validating HTTP responses with turn-key assertions such as JSON Schema validation and JSON Path data integrity checks
Pricing: Free - $500/month
9. Karate DSL
Karate DSL is a new API testing tool which helps create scenarios for API-based BDD tests in a simple way without writing step definitions. Those definitions have been created by KarateDSL so that users can kickstart API testing quickly.
- Built on top of Cucumber-JVM
- Can run a test and generate reports like any standard Java project
- A test can be written without any Java knowledge required
- Tests are easy to write, even for non-programmers
- Supports configuration switching/staging, multi-threaded parallel execution
10. There Is No One-Size-Fits-All Tool
It hurts, but it's true!
We believe the list above nominates the best solutions available if you are planning to adopt automated API testing. However, like most solutions in this industry, finding the one ideal tool to do it all is almost impossible.
Some may find the features of the commercial players (Postman, Tricentis Tosca,…) are sufficient, but the costs of ownership will be the show-stop factor. Open-source solutions (REST-assured, Karate DSL…) are affordable but require skilled resources and effort to implement the right frameworks. Tools which seem to be a relative balance between cost and other factors (Katalon Studio, Postman) might have drawbacks for specific project types that need to be considered.
API testing has established its trend in automation testing, and more tools will be developed to serve the growing demands of the software development teams. Finding the perfect tool is still tough, but we have the good news that you have way more choices than before. Carefully consider your requirements and the pros and cons of each solution — try not to be too ambitious in the early stages and trial the top 5 relevant candidates from the list above. With the POC for these solutions created, you will have better knowledge of your project’s critical factors and can fine-tune your shortlist. This approach gives you a good chance to identify a suitable tool for your current status and information on the next choice when your project is more mature.
I would love to hear your feedback, and let me know if you have other tools to record for reference.
Published at DZone with permission of Alice Ald. See the original article here.
Opinions expressed by DZone contributors are their own.