Christian Baumann
MaibornWolff (DE)


Christian is a principal test architect with 15+ years of experience in the field of testing. He has successfully held different roles in the context of testing. During his career he worked with various test (automation) tools using programming languages, but also applied certain development/ testing methodologies. Christian is strongly driven by his context, always searching for the best fitting solution for a given situation, and is always eager to learn and improve himself, while staying curious, open minded and willing to share his knowledge.

About the Presentation

Design patterns to boost your test automation
Session Speech


How is your test automation journey going? You’re working on test automation, yet didn’t receive any proper training? You managed to create some automated tests, but you suspect that something is not quite right with your automation, because your code feels messy, and maintaining it is difficult and very frustrating?

Programmers have a tool for this, a way to reuse code, called “design patterns”. Four IBM programmers nicknamed the “Gang of Four” first created the term, describing a design pattern as “a description of customized communicating objects and classes that solves a problem in a particular context of software design”. Put more simply: A design pattern is a common way of building things that solves a known problem.

If you’re creating test automation, then you are doing “software design”. Yet a lot of test automation engineers are not aware of (m)any design patterns that could ease their work. This is a pity, because using design patterns has quite some advantages.

Did you know that design patterns
– can speed up the development process by providing tested, proven development paradigms.
– help to prevent hidden subtle issues that often are detected only late in the process.
– improve code readability for people who are familiar with the patterns.

Knowing design patterns provides you with code templates. You don’t need to solve all problems from scratch. Design patterns super-charge object-oriented designs to become more flexible, elegant, and ultimately reusable. They help programmers reuse successful designs by building new implementations on previous experience. Programmers familiar with design patterns can immediately apply them to problems without rediscovering them.