About Me

I've been doing test automation for 15 years and have worked with high-profile clients as a consultant, with companies such as ITV, Sky, BBC, Barclays, Hargreaves Lansdown and the Trainline.

Testing

My work's primary focus has been web-based test automation, but I've also done some mobile and desktop automation. I've worked with many languages, including TypeScript, JavaScript, Elixir, Ruby, Java, Kotlin and Python.

Test frameworks I've used include Cucumber, Jest, Mocha, Jasmine, RSpec, Pytest and ExUnit. For web-based testing, I've used Playwright, Cypress, Selenium, WebsriverIO and Capybara.

Web-based Testing

Playwright is the tool I currently recommend for new web-based test automation projects. It has bindings to several languages (TypeScript, Python, Java, .NET) and has a nice API for writing tests. As many web-based projects use TypeScript these days, TypeScript + Playwright is an often used combination at the moment. Using the same language as the application code allows the developers in the team to write tests when needed easily. Playwright is backed by Microsoft, and it is getting monthly releases further improving it.

API Testing

API testing is a crucial skill for test automation engineers. A range of tools can be used, from testing with a specific programming language's test framework and HTTP clients to tools such as Postman and Insomnia. I can help you set up an API test suite or do it as part of testing the website.

Setting up CI Pipelines

Having tests is of no use if they don't get run regularly. It is crucial that the tests should are run on the CI pipeline and executed before merging a PR to the main code base.