SDD 2017 Schedule

Coding Level
This is a rating on a scale from 1 to 5 to indicate how much demo coding the session will contain (as opposed to slides) – 1 means no code demos, and 5 means nothing but.

Advanced Level
This is a rating on a scale from 1 to 5 to indicate how advanced the session is (in terms of the specific topic that is being covered) – 1 means that it’s introductory, and 5 means that it’s aimed at attendees who already have significant experience in the relevant area.

Friday 19 May 2017



Post-Conference Workshop

Session POST-09

Testable architecture

Coding Level 4
Advanced Level 4

One of the main challenges development teams have when trying to write automated tests is that their applications just weren’t designed with testability in mind. In this workshop you will acquire a thorough understanding of the how to build a testable application, even in the face of hostile constraints.

We start with a simple, but realistic, application that has a few automated end-to-end tests. Input and output uses the file system, and there’s a dependency on an unreliable external service. As the day progresses you’ll learn techniques and approaches for dealing with the challenges, ending with a nicely factored application that’s easy to test.

We’ll cover:

- Understanding the testing pyramid – “Pushing tests down the pyramid”

- Seams in software – an essential first step

- Test doubles – why are they useful

- Contract tests – how they keep you honest

- Builder pattern – ensuring tests remain readable

- Hexagonal architecture – ports & adapters

Seb Rose

Seb Rose

Seb has been a software consultant, coach, designer, analyst and developer for over 30 years. He has been involved in the full development lifecycle, with experience that ranges from architecture to support, from BASIC to Ruby. He’s a partner in Cucumber Ltd, who help teams adopt and refine their Agile practices, with a particular focus on collaboration and automated testing. He's a regular speaker at conferences and occasional contributor to software journals, and a contributing author to '97 Things Every Programmer Should Know' (O’Reilly) and lead author of 'The Cucumber for Java Book' (Pragmatic Programmers).  @sebrose

Other presentations by Seb Rose

Wed 17 May 2017 at 14:00

Track 7

Lies, damned lies and estimates

Thu 18 May 2017 at 9:30

Track 3

Recycling TDD

Return to full conference agenda