Posted by John Ferguson Smart
31st December 2018
Serenity is primarily designed to report the results of automated acceptance tests. However, there are times when some tests need to be done manually. And it is useful to report these tests in the overall test reports, to get a broader picture of test coverage. To make this easier, Serenity with Cucumber provides some support…
Read More
Posted by John Ferguson Smart
20th October 2018
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
Posted by John Ferguson Smart
13th May 2018
Behaviour Driven Development (or BDD) is a powerful collaborative methodology that helps teams focus on delivering high value features sooner and more reliably. BDD builds on and extends standard agile practices such as sprint planning and backlog grooming, user stories and acceptance criteria, and makes them much more effective. Teams practicing Behaviour Driven Development routinely…
Read More
Posted by John Ferguson Smart
16th April 2018
Better cross-team coordination with collaborative governance and executable specifications Getting multiple teams to work together effectively on large projects can be tricky. We expect teams to be autonomous and independent. But at the same time we expect them to coordinate with other equally autonomous and independent teams, so that their modules or services mesh seamlessly…
Read More
Posted by John Ferguson Smart
11th January 2018
Remember when the iPhone came out? Remember how Steve Jobs pitched that it “Changed Everything”, the first time? Maybe he was exaggerating a little, but there is no doubt that the iPhone was a game-changer. It changed the way we thought about what a telephone should do. The iPhone was what we call a market…
Read More
Posted by John Ferguson Smart
12th November 2017
Behaviour Driven Development (or BDD) is a collaborative requirements discovery practice that uses conversations around concrete examples to build a shared understanding and deliver features that matter. The “Three Amigos” workshops are a core part of BDD practices. It is also an important requirements discovery practice used even in teams who are not officially “doing”…
Read More
Posted by John Ferguson Smart
22nd February 2017
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
Posted by John Ferguson Smart
25th January 2017
Introduction Writing good acceptance criteria is one of the keys to effective software delivery. But it’s hard. This article looks at Feature Mapping, a new technique that can help teams write higher quality acceptance criteria more easily. An Executable Specification is a Definition of Done that you can run as a test. In Behaviour Driven…
Read More
Posted by John Ferguson Smart
1st December 2016
Introduction Behaviour Driven Development is a collaboration practice that uses conversations around concrete examples and requirements, expressed in an executable form, to deliver higher value software more effectively. In this article, we walk through a typical BDD process. While every BDD team is different, and mature teams adapt and refine their process to suit their…
Read More
Posted by John Ferguson Smart
11th September 2016
One of the distinguishing features of Serenity BDD is its powerful reporting capabilities. If you organise and structure your tests well, Serenity can help you turn your tests into a sort of light-weight functional documentation, describing both what your application does in high level terms, and how users use the application to achieve specific goals….
Read More