An anonymised project from practice

Web and performance test automation built from scratch

The client had no automated tests at all and everything was done manually. The entire solution architecture therefore had to be designed around the requirements of the client.

  • Python
  • Selenium
  • Page Object Model
  • Apache JMeter

Starting point

The client needed repeatable checks of web user journeys and system behaviour under load, but had no existing automation suite or anything else to build on.

Design and implementation

The web automation was built in Python with Selenium, using the Page Object Model design pattern.

It also included custom retry logic for situations where it was useful to distinguish a random technical issue from an actual failure. Retries did not hide the test result; they helped provide better evidence around the failure.

Performance scenarios were implemented in Apache JMeter. Together, the solution covered dozens of web and load scenarios.

Execution and reporting

The client's team ran tests on demand. Reporting followed its preference for simple text output: the email contained a concise failure description and a detailed test log.

Performance testing went beyond response time. It evaluated stability under load and looked for specific bottlenecks between service calls.

What the solution delivered

  • The team regularly used the web tests to check key scenarios.
  • Reports gave the team an overview of failures, with detailed logs to support their analysis.
  • The performance test results helped the client identify a bottleneck whose cause they could then address.
  • The client gained one coherent solution for functional and performance verification instead of isolated scripts.
  • Automation eased the workload of the manual testing team by reducing repeated checks of web scenarios.

Need to design or replace a test automation solution?

Briefly describe the current solution, the most important scenarios and how you want the results to be used.