Test Automation Blog

Tools, Tips and Thoughts for Playwright, Selenium UI and API automated testing

Better Playwright data-testid options for getByTestId()

Many test automation frameworks like Playwright support the use of a data-testid attribute (or similar) as a method for locating elements on a web page. For example we can locate this element: and populate it with some text using this Playwright code: Although data-testid is the most common name for this attribute – which is […]

Struggling to Inspect Hidden Dropdowns in DevTools? Try This Fix

Test automation engineers frequently inspect web elements using the “Elements” tab of a browser’s Dev Tools like Chrome DevTools to discover the ID or other attributes needed to locate them in their test scripts. However many modern frameworks like React can make this difficult because the elements can disappear when the mouse moves into the […]

Advantages and Disadvantages of Playwright

Playwright has become the test automation framework of choice for many software development teams for good reason. In this article we’ll look at the main advantages – and disadvantages – of using Playwright in the real world. Advantages of Playwright 1) Automatic Waits One of the biggest problems with test automation is flaky tests, and […]

Create a mock REST API with zero coding – fast!

Introduction There are times when it’s super-useful to be able to quickly create your own RESTful API, whether it’s for learning test automation or for front-end developers needing a mock back-end. You could code your own API but it’s a time-consuming and tricky process. Alternatively public APIs are available but suffer from significant drawbacks: you […]

Hate Cucumber & BDD for API tests?

It’s crucial to know when to use Cucumber and BDD to test APIs, and when NOT to. It’s a controversial topic and many have strong views on this, so in this article we’re going to take a good look – using real world examples – of when to use BDD, Cucumber, feature files and Gherkin to […]

Implementing Method Chaining with a Page Object Model

When creating a test automation framework using the Page Object Model design pattern and Selenium, a useful feature to add is Method Chaining (also known as Fluid Syntax) to make your test steps more readable and therefore maintainable. So instead of your test code using a LoginPage object like this: LoginPage loginPage = new LoginPage(driver); […]

Scroll to top