I’m seeking advice on optimizing our testing process. I’ve been part of a project for three months, which includes four developers and one QA. We’re nearing two years into the project. Currently, we face challenges with the duration of our manual regression tests. Our API tests are automated and run locally before merging into the develop branch, it take about two hours in total via GitHub Actions. However, these tests do not run in the same environment where the manual regression tests are performed.
I believe that mapping some of our Zephyr-written test cases to these API tests could help streamline our regression suites, which are expected to expand over time. Despite our QA manager’s concern that UI tests are infeasible due to frequent design changes, I’ve noticed that parts of the application have remained stable across several sprints, suggesting a potential for implementing some automated UI tests.
For now, I’m considering selecting specific API test scenarios and applying them to the environment used for regression testing. Do you think this approach is effective for addressing our testing challenges?
I have experience with Selenium and Jenkins, though my automation experience with APIs has been limited to Postman. This project uses a different stack, specifically TypeScript and Next.js.
I appreciate any insights or suggestions you might have. Thank you!
Sounds like you test a large application. Two hours to run your API tests? It’d be interesting to know if there was a way of reducing that two hours by transferring some of the tests into a regression suite.
Personally, I would be looking at user journeys in your application and mapping those out in the automation (either API or the frontend stuff you mentioned) and using that as your regression suite.
In the regression suite, I’d ensure I covered everything appropriate whilst stepping through any of those journey’s (a good example of this is frontend testing is checking a logo or image is present at the same time as filling in a new field or something like that) but I’d also be careful not to repeat any steps along any of these journey’s.
May need more information on the nature of the manual testing and why this takes so long. Could some of that pain be transferred to automation as well, freeing up more of your time?
You might find you’ll need to really change the way your framework is setup to solve this problem.
I’m starting with a few questions as it’s not clear to me what’s the problem that you encounter.
" we face challenges with the duration of our manual regression tests"
How do you do your regression testing? interface, flows, process, tools;
When do you do them? do you maybe go through them too often?
What is their total duration, and why do you think it’s too long?
Which part of it takes the most? Is the data-setup, the response time of interfaces, the following of specific steps/scripts, the environment spin/configuration…or
Why do you have this volume that you want to/have to do? Have you considered a more targeted approach, based on what changed(talking to developers, tracking the code repository) to narrow down the areas?
To whom is the duration of the regression checks a problem? and why?