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 and Python.

Test frameworks I've used include Cucumber, Jest, Mocha, Jasmine, RSpec, Pytest and ExUnit.

Web-based Testing

The web-based test automation stack has often been Selenium WebDriver, but recent projects have used tools such as Playwright and Cypress. 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 a natural combination to recommend at the moment. Using the same language as the application code allows the developers in the team to write tests when needed easily. Microsoft backs Playwright, and it is advancing at a quick pace.

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. The tests should be run on the CI pipeline and executed before merging a PR to the main code base. If you aren't running the tests on the CI yet, I can help you set up the pipeline.