
Today we will discuss:
What opportunities will be available to you right after this course completion
Today we will discuss:
How we are going to communicate to make sure that the learning process is efficient
We will review where to ask questions
How to ask questions
And will review communication channels that exist, where you can reach out to me.
In this video lesson you will learn how to use resources for the lectures.
Today we will learn:
JDK Versions – which one to use?
Oracle JDK VS Open JDK
How to check the current Java version.
How to download JDK binary
Configuring Java environment variables
Today we will learn:
Gradle main features
Gradle Versions – Which one to use?
Prerequisite for Gradle installation
How to check the current Gradle version
How to download Gradle binary
Configuring Gradle environment variable
Today we will learn:
What is IDE?
What are the most popular IDEs for Java development?
Why IntelliJ IDEA?
How to install IntelliJ IDEA to your machine?
How to perform the basic configuration of IntelliJ IDEA?
Today we will discuss:
A bit of Selenium history
Main components of Selenium
Why we should learn Selenium Web Driver
Role of the Selenium in the software testing process
Today we will discuss the following:
What is Selenium WebDriver?
Main Components of Selenium WebDriver.
Practical Use-Cases of Selenium WebDriver in Software Testing Process.
Today we will discuss the following:
How Selenium WebDriver works from inside.
Test scripts execution, client-server communication, browser driver, cleanup.
Interaction with web elements, asynchronous communication, response handling.
Today we will:
We will create a test project
Learn the basics of build.gradle file
Set up Chrome driver
Navigate to URL via Selenium
Find UI elements and interact with them as Java objects
Perform some user flow basic operations with web application
See what tear down hook is in Selenium
Today we will see the solution for the first home task. The home task was the following:
Create a project in Intellij IDEA
Add Selenium and WebDriver Manager dependencies.
Open Amazon home page.
We will discuss the following in our today's lesson:
How to locate UI elements on web page.
How to interact with UI elements.
How to tear down WebDriver after test run is finished.
The home task for today's leesson is:
Add UI interactions for your Application.
Search for ‘iPhone.
Close browser after test’s run finishes.
Today we will:
Add JUnit dependency to our project
Gather actual results for comparison from UI
Learn how to create expected results for tests
Gather text from UI elements
Work with Java Streams
Apply JUnit assertion to our application
Today we will see the solution for the home task with first assertion. The home task was the following:
Add JUnit dependency to your project.
Collect actual results from UI.
Apply Assert.assertTrue() method for your actual result.
Collect expect results from actual results.
Apply Assert.assertEquals() method to compare actual and expected lists.
Today we will learn:
JNUnit role in development.
Essential JUnit components.
JUnit Assert functions
Impeccable tests with JUnit.
Real-world JUnit use-cases.
Today we will:
Consider differences between JUnit 4 and JUnit 5
Add JUnit 5 dependency to our project
Migrate application from JUnit 4 to JUnit 5
Apply JUnit 5 assertions to our application
Create our first JUnit test
Add JUnit 5 @BeforeAll and @AfterAll hooks
Today we will see the solution for the home task with transformation of main method into a JUnit 5 test method. The home task is the following:
Add JUnit 5 dependency to your project
Migrate your application from JUnit 4 to JUnit 5
Apply JUnit 5 assertions for your application
Transform your main() method into a JUnit 5 test method with @Test annotation
Add JUnit 5 @BeforeAll and @AfterAll hooks to setup and tear down web driver
Today we will discuss the following:
Implicit Waits advantages and disadvantages.
Explicit waits pros and cons.
Fluent waits positives and negatives.
Today we will learn:
How to apply implicit waits in your project?
The home task for today's lesson is:
Apply implicit wait in the Amazon search tests
Today we will learn:
How explicit waits are connected with implicit waits?
How to apply explicit waits in your project?
The home task for today's lesson is:
Add explicit wait config for your Amazon Search test.
Turn off implicit wait before using explicit wait.
Turn on implicit wait back after using explicit wait.
Today we will discuss the following:
Main components of Page Object.
Main advantages and disadvantages of Page Object.
Practical use-cases of Page Object.
Today we will learn:
What is Page Object?
Page Object components
Learn @FindBy annotation
How does Page Object work?
Compose our test from Page Objects
Create common Base Page class
Today we will see the solution for the home task with page object concept. The home task was the following:
Create a Base Page class.
Move initialization logic common for all the pages to this class.
Create HomePage and SearchResultsPage
Put the elements needed for your test to these pages
Add methods needed for your test to Page Objects
Run your tests and achieve 100% pass
Today we will discuss the following:
Main components of Web Component.
Main advantages and disadvantages of Web Component.
Practical use-cases of Web Component.
Today we will learn:
What is Web Component in Selenium?
How is Web Component related to Page Object?
Why we need Web Components?
How to write custom wrapper for WebElement?
How to initialize Web Components on Page Object?
How to split our Page Objects into Web Components?
Today we will see the solution for the home task with web component concept. The home task was the following:
Create a Base Web Component class.
Move logic wrapping root element actions to this class.
Create Web Components needed for your tests
Put the business logic from your tests to these components
Inject the components into Web Pages created in previous homework
Run your tests and achieve 100% pass
Today we will discuss the following:
Main components of Data Transfer Object.
Main advantages and disadvantages of Data Transfer Object.
Practical use-cases of Data Transfer Object.
Today we will learn:
What is Data Transfer Object (DTO)?
Why is it needed in automated testing?
How to create DTO correctly
How to create DTO in our project
Differences between DTO and simple assertions
Today we will see the solution for the home task with Data Transfer Objects concept. The home task is the following:
Create a class representing Search Result item as DTO
Add all the fields important to your test to this component
Override equals() and hashCode() methods for correct Assertions’ work
Override toString() method to improve Assertion failure message verbosity
Create method converting your SearchResultItemComponent into DTO
Today we will learn:
Why do we need to run tests via CMD?
Which Gradle tasks can be used to do so?
How to run our tests via CMD?
Where test results report is stored?
How to run a few Gradle tasks in a row?
Today we will see the solution for the home task with running test via CMD. The home task was the following:
Check that your test is marked with @Test annotation
Open CMD in the test project’s root
Execute two Gradle commands clearing project’s output directory and starting your automated tests
Investigate HTML tests’ report
Today we will learn:
Discuss what CSS selector is
Observe why we should use CSS selectors
Find out how to install Chro Path plugin
Review common CSS patterns
Apply CSS selectors in practice
Today we will learn:
Discuss what XPath selector is
Observe why we should use XPath selectors
Find out the difference between absolute and relative XPath
Review common XPath patterns
Apply XPath selectors in practice
Are you eager to become a Test Automation Engineer and harness the power of Selenium with Java? Look no further! This comprehensive course is designed to take you from a beginner to a proficient Selenium tester.
In today's fast-paced software industry, Selenium is a game-changer for web automation. This course is your gateway to mastering Selenium in Java, empowering you to create robust and maintainable test scripts.
What You Will Learn:
Selenium Basics: Begin your journey with a solid understanding of Selenium, even if you're new to automation testing.
Selenium in Java: Dive deep into Selenium using Java as your programming language of choice, enabling you to create powerful web automation scripts.
Selenium Waits: Understand the importance of waits in automation testing and master various wait strategies to handle dynamic web elements effectively.
Page Object Concept: Implement the industry-standard Page Object Model (POM) to create organized and maintainable test scripts.
Web Component Concept: Explore the Web Component concept to build reusable and scalable automation components.
Data Transfer Object Concept: Learn how to efficiently transfer data between your test scripts and automation components.
JUnit 4 Basics: Get acquainted with JUnit 4, a widely-used testing framework for Java, to structure and run your tests effectively.
JUnit 5 Basics: Explore the latest version, JUnit 5, and its advanced features for more robust test automation.
Gradle Basics: Discover Gradle, a powerful build automation tool, to manage project dependencies efficiently.
Why Enroll in This Course?
Hands-On Experience: Gain practical experience through hands-on exercises, quizzes, and real-world projects that reinforce your skills.
Expert Guidance: Learn from experienced instructors with a deep understanding of Selenium in Java and test automation.
Career Advancement: Enhance your career prospects by becoming proficient in Selenium with Java, a skill highly sought after in the testing industry.
Lifetime Access: Enjoy lifetime access to course materials, updates, and a supportive online community.
Don't miss this opportunity to become a Test Automation Engineer with Selenium in Java. Enroll today and embark on your journey to success in the world of automation testing!