TestCon Vilnius 2018

Groupon, Poland

Bartosz Czerwiński

Bartosz is a software engineer, trainer, and an Agile coach passionate about Agile Software Craftsmanship, TDD, BDD, and Continuous Automation. He gained his experience by being involved in multiple projects, both commercial and research, in various roles, including software engineer, trainer, systems administrator, IT consultant, team leader, tech lead, and an IT manager. He loves to encourage others to experiment by sharing the Embrace Failure philosophy in order to improve learning curve and experiences.


Resilience Testing – Failure is an Option

Nowadays everyone wants to builds software that brings business value. We set focus on meeting requirements given by customer, obviously. The faster we deliver the better, as the fast feedback loop is crucial to successful delivery. We tend to forget, unfortunately, that apart from those shiny business features our system has to survive under unexpected conditions. We often don’t consider what will happen if the system fails in production.

Resilience testing is an important aspect of each product that is supposed to operate continuously. We must remember that failure is an option. We must be prepared. A real challenge is to focus on the right piece of your system and keep your tests isolated. There are many tools to simulate a failure of resources or external services, but there are little tools that let you fully control internal parts of your product in a fully transparent way.

The talk will cover live coding, demo session, and practical guideline on tools and techniques for resilience testing, but first and foremost it will present a unique way of letting your tests control your system to simulate a failure while keeping test code fully decoupled from production code.