John Ferguson Smart

John's latest articles

One to request, one to suggest and one to protest – the anatomy of a Three Amigos Requirements Discovery workshop

Posted by John Ferguson Smart

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

Running individual scenarios in JBehave or Cucumber with Serenity BDD

Posted by John Ferguson Smart

When we are working with BDD test automation tools such as Cucumber and JBehave, it often comes in handy to run an individual scenario in isolation. In this article, we look at how to do this using Serenity BDD. JBehave In JBehave, you need to use tags to identify the scenario you want to run….

Read More

Tell me what you know – a different way of looking at requirements discovery

Posted by John Ferguson Smart

The legacy of the linear requirements process When I started out in software development, we had a thing called a Requirements Specifications Document. Business Analysts would spend a very long time gathering the requirements, organising them, and writing them down in a large Word document. Over time, folk found this approach to be inefficient and…

Read More

Learn BDD test automation with Cucumber and Serenity at the Serenity Dojo

Posted by John Ferguson Smart

“Cucumber and Serenity are the Dynamic Duo of BDD test automation” Learn real-world BDD test automation practices with Cucumber and Serenity BDD, online and at your own pace. Behaviour Driven Development, or BDD, is an extremely effective software delivery practice that helps teams collaborate better and focus on delivering features that really matter. Cucumber is…

Read More

Engage! Bringing teams together to deliver software that makes a difference

Posted by John Ferguson Smart

John delivers a Keynote at the IMWorld 2017 conference in Romania on the topic of bringing teams together to deliver software that makes a difference:

Read More

Intent-Driven Development – the hidden key to BDD

Posted by John Ferguson Smart

Intent-Driven Development. It’s not a new agile fad – it’s just articulating an approach that works well for a lot of experienced practitioners. Whether they know it or not. When I train and coach development teams, I like to talk about Intent-Driven Development. Don’t worry – Intent-Driven Development is not the latest agile trend. Rather,…

Read More

Persona Step Libraries in Serenity BDD

Posted by John Ferguson Smart

Serenity 1.6.3 comes with a new step library feature called Persona Step Libraries. Persona Step Libraries help you make your test code more intuitive and more readable. You can check out the full release announcement on our new Rocket Chat forum. Serenity has always tried to make it easy to organise your test code into appropriate…

Read More

All you need to know about Serenity BDD Step Libraries

Posted by John Ferguson Smart

In Serenity 1.6.0, we have refactored how step libraries are managed, to make them more intuitive and easier to understand. Basic step libraries In Serenity, we use step libraries to better organise our test logic into reusable components. Step libraries are often used to represent actors or persona who interact with the application. For example,…

Read More

Exponential Learning – the key to effective Lean/Agile practices

Posted by John Ferguson Smart

In lean/agile software development, learning is not a byproduct; learning is the most valuable output. To up our game, we don’t just need to learn how to build and deliver better software. We need to learn how to learn better. And one of the keys to learning better and faster is measuring how well we…

Read More

How not to prepare test data in JBehave and Cucumber

Posted by John Ferguson Smart

Preparing test data is hard, avoiding duplication and unnecessary setup time are common issues in all test automation. But it is especially important when we automate acceptance criteria using BDD tools such as JBehave and Cucumber. Duplicating setup logic in each scenario can lead to cluttered and hard-to-read scenarios. And having to inject the same…

Read More

Page 1 of 512345
Subscribe to John's Newsletter: Agile Insights
Get John's thought-provoking insights on how to deliver software that matters sooner straight to your inbox
Thanks for signing up! You must confirm your email address before we can send you. Please check your email and follow the instructions.
We respect your privacy. Your information is safe and will never be shared.
Don't miss out. Subscribe today.
×
×