Training
Design patterns in test automation
Design patterns have been around in software development for many years. Some developers love them, while others consider them useless. But they serve very clear purposes: to describe typical solutions to typical problems, to create a common language for the community, and to improve the understanding and reuse of existing approaches. That is exactly why design patterns are such a powerful tool in skilled hands. After all, they let you solve the problems you run into quickly and reliably, in a simple and clear way.
Test automation has its own set of challenges, so it’s only logical that there is also a set of useful design patterns for this field. The trouble is that they are often pulled into a project mindlessly, without much thought for the problem at hand. The result is a more complex and convoluted solution for no good reason. And that affects how well other engineers can understand and maintain it.
The goal of this training is to examine all the popular design patterns in great detail and build an understanding of when they are worth using and when they aren’t. Most of the patterns will be reinforced with practical examples in Java, where participants can experience their advantages and disadvantages firsthand.
- Target audience
- Test automation engineers, developers, QA engineers
- Price
- $200per participant
- Date and time
- 8 hours / 1 day
Detailed program
- Introduction to design patterns
- Types of design patterns
- Reasons to use them
- Structural patterns
- Page Object
- Fluent/Chain of invocations
- Factory/Page Factory
- Page Element and popular implementations
- Loadable Component
- Strategy
- Data patterns
- Value Object
- Builder
- Assert Object/Matchers and popular implementations
- Data Registry
- Object Pool/Flyweight
- Data Provider
- Technical patterns
- Decorator and how to apply it to different kinds of problems
- Proxy and popular implementations
- Patterns for involving business stakeholders
- Keyword-driven testing and popular implementations
- Behavior Specification and BDD tools
- Steps and popular implementations
- Examples of poorly applied design patterns
- Wrap-up
