Visual API testing with Python
Test Modeller enables flexible and rigorous API testing, avoiding time lost to complex scripting and API specification analysis. Importing test code and API specifications creates everything needed to generate tests from visual flows, quickly creating the smallest set of tests needed to validate complex APIs in-sprint.
Critical-but-complex: APIs make testing bottlenecks even harder to fix
Testers today must ensure that critical APIs deliver the right responses to the right requests. Otherwise, internal systems and customer-facing applications come apart at their seams. Yet, it is highly complex making sure that in-house and third part components interface correctly, while API testing has further added to the skills gap already opened by test automation. Testers must first convert complex API specifications into comprehensive API test scenarios, hitting a variety of endpoints with a range of different data combinations. When performed manually, this test design typically hits just a fraction of possible scenarios, while test scripting is slow and complex. A streamlined, simplified, and automated approach is instead needed to protect critical systems from production defects.
Auto-generate complete and customisable API tests
Test Modeller combines all the flexibility of scripting with the simplicity and rigour of visual test generation, rapidly generating comprehensive API tests from intuitive flowcharts. Automated test generation reuses existing code, using a code importer to parse scripts written in Python, C#, Java, Javascript, and more. A Swagger and OpenAPI importer further identifies the functions and data needed to test complex APIs, creating all the test code, data and logic needed to build new tests. Flowcharts then allow coders and non-coders to assemble end-to-end scenarios visually, simply hitting “generate” to create custom scripts for existing test automation frameworks.
The automated test generation uses multiple optimisation algorithms to create the smallest set of tests required to “cover” every modelled API call and data. This ensures that critical APIs send the right response to for the right request, moving seamlessly from API specifications to comprehensive tests in-sprint. Synchronising code from scripted frameworks further retains all the flexibility of coded automation, avoiding vendor lock and allowing non-coders to build accurate tests. With Test Modeller, cross-functional teams can collaborate to test complex APIs in short iterations, minimising time lost to repetitive scripting and API specification analysis. Visual flowcharts seamlessly reuse custom automation code, importing API specifications to build rigorous automated tests in-sprint.
“Codeless” API test automation retains all the flexibility of scripting
Watch this short demo of Test Modeller converting Python code and a Swagger specification into rigorous tests, to see how:
-
Test Modeller’s code importer automatically parses bespoke automation scripts, creating reusable templates for rapid and maintainable API test generation.
-
Editing the code templates in an intuitive editor quickly defines all the actions and assertions needed to test complex APIs rigorously, with support for Python, C#, Java, Javascript, and more.
-
Importing Swagger and OpenAPI specifications automatically identifies the endpoints, API calls and data needed in testing, avoiding time spent analysing complex API specifications.
-
Intuitive flowcharts visually assemble the reusable functions into complete test scenarios, automatically identifying the data equivalence classes needed to test each endpoint.
-
Hitting “generate” automatically identifies the test cases needed to test each endpoint rigorously, generating custom Python code without slow and complex scripting.
-
Coverage algorithms ensure that API tests “cover” the full spread of modelled data, running the smallest set of tests needed to ensure that each Request receives the correct Response.