UI automation masterclass
Most teams and organizations I’ve worked with spend a lot of time and effort on their UI automation, often without seeing much in terms of results.
What they often don’t realize is that this type of automation is the hardest of them all, and that doing it well requires skills beyond just knowing how to click buttons with Selenium, Cypress, Playwright or any of the others tools out there.
To succeed with user interface-driven automation, you’ll need to know
- what to automate at this level and what to cover in finer-grained tests
- how to set up your application and its environment for UI automation success
- how to make sure your tests are reliable and maintainable, and how to keep them that way
In this three-day UI automation masterclass, you will learn all you need to know to start being successful with your UI automation efforts.
Course contents - day 1
Day 1 of the masterclass lays the groundwork for days 2 and 3. On day 1, you will learn:
- Why UI automation is the hardest form of automation there is, and how to make those around you see that, too
- How to decide what to automate through the UI, and what to cover with finer-grained tests instead
- How to set up your environment for UI automation
- What components you need when creating a UI automation solution
- How to start writing your first tests against the UI
After completing day 1, you will be able to have better conversations around the benefits and drawbacks of UI automation.
You will also have a basic understanding of how UI automation tools work and how to get started writing tests using these tools.
Course contents - day 2
On day 2, you will expand the tests you wrote on day 1 and start building a solution that is reliable and maintainable. You will learn:
- Different element identification and interaction strategies
- Why synchronization and waiting are fundamental to automation success, and how to do it right
- How to better structure your test code and reduce duplication
- Why and how to apply fundamental object-oriented programming principles to improve your UI automation code
After completing day 2, you will know what it takes to write better UI automation code. You will also have a much deeper understanding of how your test code exactly interacts with the UI of your application.
Course contents - day 3
The final day of this masterclass covers everything we need to create production-grade UI automation that is fit for the future. You will learn:
- What the Page Object pattern is, what the Screenplay pattern is, and how they differ
- How to make sure that your tests produce the information you are looking for
- What it takes to run your UI automation as part of a Continuous Integration pipeline
- How to refactor slow, unwieldy UI tests into better, faster and smaller ones
After completing day 3, you will have a complete overview of all you need to know to succeed with UI automation. You can explain the role and place of UI automation in an overall testing and software development strategy, and you will have gained knowledge of and experience with the tools you need to implement this strategy.
This masterclass is packed with a variety of exercises. Some of these will be individual, some are done in groups of 2-4 people. A number of them will be carried out on laptops, but there will be other exercise formats too. Interaction is a key component in this course.
Intended audience and prerequisite knowledge
This course is aimed at software testers and developers that want to learn more about and do better with their UI automation efforts.
Some prior experience with (object-oriented) programming is a prerequisite to get the most out of this course. I recommend this course to get an idea of the level of experience needed.
Additionally, some general experience with software testing and test automation will be helpful.
Delivery and group size
This is a live training course, available both on site and online.
I can run this course using C#, Java or Python as the programming language, and using Selenium WebDriver or Playwright as the automation library to use.
If you would like to book me to teach this course in your organization, or if you have any additional questions, please send an email to email@example.com or use the contact form on this page.
For an overview of all training courses I have on offer, please visit the main training page.