The aim of the course
Want to become professional in front-end test automation? Or at least improve your knowledge and skills in Selenium Webdriver and to be able to create stable, mature and well-structured test set, which are easy to maintain when tested application changes? Are you interested in learning how to exploit the potential of combining Selenium with Continuous Integration environment? If yes, this is the right training for you.We will start right away with the biggest concern regarding the front-end based test automation – maintenance of the test scripts. There are several approaches and tricks to use, all combined together, they actually work very well. We will discuss the layered architecture, and we will give thorough attention to the usage of Page Object design pattern and related concepts as well as how to get the maximal power from the automated tests using data grids and effective test data combinations.The second day of the training is dedicated to the combination of automated tests with Continuous Integration environment, a configuration of the execution environment of the more extensive set of tests and advanced logging possibilities. Then, the training focuses on the test automation of mobile applications using the Selenium in combination with the Appium environment.
Initial knowledge of Java programming language
Initial knowledge of Selenium API
Recommended prerequisite (but not needed, if you develop Selenium tests already): to take the course Effective Automated Testing with Selenium.
Economics and ROI of test automation, scope selection
How to reduce maintenance of the automated tests? A set of tips and tricks
3 and 4 layered Selenium test automation architecture
Employment of reusable objects – advanced concepts
Implementation of PageObject pattern and PageFactory
Get the best power from the data grids
What to feed into the data grid? Employ the efficient combinatorial testing techniques.
Definition of PageComponent pattern and strategy of component implementation
Implementation of ComponentFactory (using Selenium Support)
Setting up DriverManager object for running tests locally and remotely
Installing the Jenkins server for running tests on remote desktop
Artifactory server and its implementation
Integration between Jenkins and Git server
Mobile automation through Appium on Android devices
Implementation of Logger functionality using Log4j2 library and AspectJ
Summary of quick-wins, good and wrong practices
Required equipment: own notebook with an up-to-date Java development IDE supporting Maven and TestNG (IntelliJ IDEA is preferred, but other IDEs can be used as well). The rest will be installed at the beginning of the training via the Maven. Prepared automated test scripts to customize and develop during the course will be given to participants via shared web folder.