Gartner, Forrester, and other industry experts are now advocating that API/message layer testing (services, message queues, database abstraction layers, etc.) is much more suitable for test automation and continuous testing than GUI testing—particularly with Agile and DevOps.
- APIs (the "transaction layer") are considered the most stable interface to the system under test.
- GUI tests can't sufficiently verify functional paths and back-end APIs/services associated with multitier architectures.
- GUI tests require considerable rework to keep pace with the frequent changes typical of accelerated release processes; tests at the API layer are less brittle and easier to maintain.
- Agile and DevOps teams working with short iterations and fast feedback loops find that GUI tests require considerable rework to keep pace with frequent change. Tests at the API layer are less brittle and easier to maintain.
Fortunately for software testers, API testing can be quite painless. We've prepared some short videos to help you understand what's involved and see how easy it is to get started with API testing...
Automatically-Generating Tests for the Endpoints in a Swagger Definition
Using Data Sources to Parameterize Tests
Generating and Updating Regression Controls
Extracting Values from JSON Responses and Reusing them in Other Tests
Adding Targeted Assertions for Values in JSON Responses
You can see more API Testing "how to" videos on the Parasoft web site. Note that these videos feature Parasoft API Testing, the industry-leading solution for enterprise-grade API/service unit testing, end-to-end functional testing, load/performance testing, and security testing.
API Testing: Recommendations from Forrester Research
Want to learn more about API Testing? Download a complimentary Forrester Wave report that evaluates 9 functional test automation tool vendors across 40 criteria to help organizations working on enterprise, mobile, and web applications select the right tool.