Test Automation

using Selenium and Java

Learn to create efficient and stabile automated tests using the Selenium WebDriver framework.

About the course

Does front-end based test automation work? It definitely does, and it works well, when it is designed and implemented properly. In this course, we show how to do just that.

More often than not, people say that the main problem with this technology is the maintenance. And these people are right. We struggle when the tested system changes, making our tests obsolete. These changes are inevitable and cause maintenance overheads that can lead to the failure of test automation projects.

It’s naïve to say the overhead is simply too high. So after covering the basics we move on to more advanced structuring of the tests, resulting in minimizing this overhead and allowing us to write well-structured and economic code.

In this 2 day course, we use the Selenium WebDriver framework – a known and reliable open-source solution for automated tests. Besides the structuring concepts, we also demonstrate WebDriver API and identify good usage patterns. Finally, we show how to combine WebDriver with JUnit framework to run our tests.

We do all this via interactive practical examples. Course participants can develop their own test code and use it on prepared examples, all with the support of experienced test automation specialists who have a rich background in various test automation projects.

Course duration: 2 days


  • A laptop
  • Up-to date Java development IDE with Maven and JUnit support (Ideally IntelliJ IDEA)
  • We will install the rest at the beginning of the training via Maven
  • We will give participants access to prepared automated test scripts to customize and develop during the course

Key takeaways

Page object modelling

Test design for automated testing

Introducing Selenium WebDriver API

Key topics

  • Test design and architecture
  • Structuring scripts
  • Introduction to Selenium
  • Localization strategies
  • More advanced structuring
  • Code quality and refactoring