Golden test framework with Java/Selenium/TestNG/Maven/Log4j2
What you'll learn
- Able to build a test framework with the Intellij IDE using Java, Selenium WebDriver, TestNG, Maven and Apache Log4j2.
- The skill to automate a web application according to the Page Object Model (POM) design pattern.
- Enough knowledge of all the mentioned libraries to be a proficient test automation engineer!
- HTML knowledge for boosting your automation skills
- Some handy Java knowledge for improving your automation and implementing them in the test framework
- See the description part for a complete overview!
Requirements
- You dont necessarily need to have java knowledge to start this course, but its nice to have basic knowledge of programming or java. If not it will be a little harder for you but i will be explaining the basics so you will be able to follow the course.
Description
In this course i will teach you to build a test framework with IntelliJ using Java, Selenium WebDriver, TestNG, Maven and Apache Log4j2.
The course is divided in to two parts.
The first part is the lessons part. In this part I will teach you the basics of selenium, testNG and the foundations of building our framework.
Once the foundations are set we can carry on to the second part.
In the second part we will build a test framework based on automating a real website.
The framework will be built according to the Page Object Model (POM) design pattern. The POM is a concept that is used a lot to automate multiple page applications. Here we segregate the automation from our tests. This makes the framework more maintainable. Your tests will also be easier to read and will be more script based. Even a collegue with less programming experience can create some tests in this framwork.
After this course you will be able to create a whole framework for automated testing of webapplications with all its necessary components.
I will also keep updating the course with new subjects in the future.
Here is a more detailed overview of the subjects i will teach:
- Enough Java knowledge to start automating
- Setting up the software needed
- Basic methods of Selenium WebDriver
- Some handy ChromeOptions
- HTML knowledge for automating web applications
- Finding elements with xpath and css
- Handle basic html elements such as dropdowns, inputfields, checkboxes,
frames, alerts, tables, lists, date pickers, switching windows, etc
- Creating handy tools with java such as a dynamic date formatter for your test cases
- Creating enums for static dropdowns and implementing them in the framework
- Integrating Maven after learning basics
- How to build a Page Object Model Designed framework
- Usage of different Assertions
- Difference between hard and soft assertions
- Implementing smart wait's
- Setup global properties file for usernames and passwords etc
- Take screenshots
- Using the JavaScript Executor
- Controlling test cases with the testNG xml
- TestNG Parameterization
- DataProvidor annotation
- Implement TestNG listeners
- Executing tests from the command line so we can link the project to a tool
for CI/CD (Continuous Integration / Continuous Delivery)
- Setting up log4j2 for logging with an xml and a properties file.
- Create new logging files after each test run
- Integrating all of above components in a working framework while teaching
Who this course is for:
- Everyone who wants to learn automating web applications
- Test Engineers / Automation engineers
- People who wants to change career
Instructor
My name is Yalcin Batur and I'm from the Netherlands.
In 2017 I made a career change from a dietitian to a test engineer. I was immediately fallen in love with test automation when I got in touch with it. It was never easy as a beginner. Especially for someone who didnt have a background in IT. After a few years of experience I decided to share my knowledge and teach people how to automate applications with different techniques in a very structured and organized way.
The course i have written on udemy is about creating a comprehensive, robust, maintainable and friendly testing framework with Java/Selenium/TestNG/Maven/Log4j2 for automated testing of web applications. The framework is built according to the Page Object Model design pattern.
Due to the setup of the course it is accessable for anyone. Wheter if you are a beginner or an experienced tester. Just anyone who is interested in learning these techniques.