John Ferguson Smart

John's latest articles

REST API testing with Rest-Assured and Serenity-BDD – a primer

Posted by John Ferguson Smart

REST API testing an increasingly important part of modern software architectures. And in a world where speedy delivery is of the essence, comprehensive automated tests are not an option. From a testing perspective, understanding REST APIs and how to use them is vital, even if you aren’t writing tests for an API directly. Testers can…

Read More

What’s new in Serenity 2

Posted by John Ferguson Smart

Serenity BDD is a library that helps you write better automated acceptance criteria, and produce better living documentation and executable specifications. In this article, we will look at the key new features in Serenity BDD 2.0. Introduction Serenity BDD is a test automation and reporting library that is used in conjunction with other testing libraries…

Read More

Embedding Custom Data in Serenity Reports

Posted by John Ferguson Smart

Executable specification written in Gherkin are a great way both to document an application’s behaviour, and to demonstrate that it works. QA folk can use the generated living documentation to verify both that the feature does what the business expects of it, and that the feature actually works. Because of this, BDD living documentation plays…

Read More

Multi-browser and multi-environment testing in Serenity BDD

Posted by John Ferguson Smart

Sometimes we might want to run the same test in different environments, or on different browsers, and still see each test run appear in the reports. The latest version of Serenity BDD allows you to implement multi-browser and multi-environment testing using the notion of contexts. A context is a way of running the same test several…

Read More

BDD, Microservices, and Serenity BDD

Posted by John Ferguson Smart

Introduction Many people still associate Behaviour Driven Development (BDD) and automated acceptance testing with User-Interface tests. But BDD and automated acceptance criteria works equally well for service-level tests, notably for Microservices. In fact, automated acceptance tests for Microservices are easier to write and much quicker to run than UI-based tests. In this article, we will look at…

Read More