I turned plain English and any live website into API tests
An open-source side project that converts plain text prompts and live web interactions directly into Postman, Playwright, and JMeter test suites.

Stock photo for illustration only, not from the actual event
- A QA engineer built TestFlow Agent to eliminate redundant test authoring across three formats.
- Mode one takes plain English instructions to generate API sequences and runnable test suites.
- Mode two records real web browser sessions to automatically discover and build test artifacts.
- Exports artifacts into Postman collections, Playwright specs, and JMeter plans seamlessly.
As a quality assurance engineer, Shankar Subramanian faced a repetitive friction point when validating business flows: building the exact same validation suite three distinct times. This involved creating a Postman collection, a Playwright API test, and a JMeter plan utilizing identical requests, variables, and assertions typed out across three different formats. The process was slow, tedious, and caused the three copies to drift apart whenever a modification occurred.
To solve this repetitive workflow, he developed TestFlow Agent to handle the process once. The tool operates through two distinct modes designed to address completely different situations. The first mode is intended for scenarios where you maintain direct control over the API being tested, such as a service belonging to your team where endpoints are already familiar.
In this initial mode, recording is entirely unnecessary. Users simply type out the test scenario in plain English, such as creating an enrollment for a member in Texas, retrieving available plans, selecting a Silver plan, submitting the enrollment with an effective date of 01/01/2026, and validating that the enrollment status remains ACTIVE.

Stock photo for illustration only, not from the actual event
Translating natural language statements into executable API testing sequences represents a Behavior-Driven Development (BDD) approach that bridges the gap between developers, QA teams, and business stakeholders, ensuring clear shared understanding through readable instructions.
Upon interpreting the intent, state, and specific dates from the text, TestFlow Agent produces the exact API sequence, including token authentication, member creation, plan querying, and enrollment execution. It subsequently generates the Postman collection, Playwright spec, and JMeter plan sharing unified environment variables. Because the repository ships with a compact mock API, users can execute the entire end-to-end flow immediately.
However, this first approach carries limitations since it works best for known services under your ownership. This led to the second, more compelling mode: recording any application directly without prior API knowledge. In this mode, users input a URL, trigger the discovery phase, and interact with a live browser instance—such as an OrangeHRM demo environment—before concluding the recording session.
Behind the scenes, the tool captures raw network traffic and converts the actual user actions into the standard trio of test artifacts. The engineering complexity largely involved refining messy browser traffic into clean, repeatable tests by properly detecting variable chains, handling identifiers, and maintaining consistent data flow across separate execution steps.
"reviewId and kpiId are now variables that resolve from a generated environment file — so you import it and run, no manual filling-in."
Shankar Subramanian
Additional capabilities include naming variables derived from JSON response fields rather than raw URLs, gracefully managing expired CSRF login tokens by refetching fresh credentials prior to execution, and filtering out peripheral noise such as fonts, analytics bundles, and tracking pixels to preserve only core business API calls.
Released as an open-source project under the MIT license utilizing Node.js, Express, and React, TestFlow Agent provides a simple one-command Docker deployment setup for developers looking to streamline automation testing.
Source: Dev.to
Found something wrong in this article? Report an issue with this article
Comments
Leave a Comment