
Master automation testing with selenium overview: learn installation, java, eclipse, browser drivers, locators, waits, and advanced elements like iframes, alerts, with hands-on practice and frameworks overview.
Selenium is an open source automated software testing tool for web applications. It uses options instead of desired capabilities and covers components like remote control, webdriver, grid, and cdm id.
Discover how Selenium remote control, a Java server, accepts browser commands via HTTP, enabling tests in Java, Python, or C to run across browsers with a JavaScript executor.
Discover how selenium web driver sends commands directly to the browser with no server, replacing selenium rc and supporting multiple browsers and platforms through dedicated drivers.
Learn how selenium grid enables parallel testing by running tests on remote browsers across multiple machines, reducing execution time, with hub-driven orchestration and node matching via desired capabilities.
Visit the JDK site, download JDK 11 for Windows x64, accept the Oracle license, sign in to Oracle, download and install, then verify the JDK appears under program files/java.
Download and install eclipse and the JDK, launch the eclipse IDE for Java developers, create a training project with a package and a main class, and run to see output.
Set the java_home environment variable to your JDK or JRE installation path before using the JDK by editing system variables, locating the java folder, copying the path, and applying changes.
Create a Java project in Eclipse, set up the src structure, add a class with a main method, and run a simple print statement to verify the setup.
Download and extract the selenium java jar files, then add them to your Eclipse project via build path and libraries, including the lib folder, to configure selenium in Java.
Download Chrome and Firefox drivers for Selenium WebDriver, and learn how browser drivers act as the bridge that runs test cases across different browsers and operating systems.
Explore the key Selenium components—Selenium IDE, Selenium RC, Selenium WebDriver, and Selenium Grid—and learn how commands, drivers, and parallel testing enable browser automation across multiple platforms.
Explore Selenium WebDriver commands across browser, navigate, and web element actions, including get, get title, current URL, page sources, close, and click or send keys.
Learn to run a selenium test in Chrome by setting the driver path, creating a Chrome driver object, and using get to open the Amazon website.
Learn to run a selenium test in firefox by configuring the gecko driver path and using the firefox driver class, mirroring chrome steps with a project-based driver setup.
Learn to run Selenium tests in Microsoft Edge by downloading and unzipping the Edge WebDriver, configuring the driver path, importing EdgeDriver, and launching Amazon in Edge.
Learn to interact with web elements using locators in Selenium, covering types like id, name, class, XPath, and CSS selector, and using find element and find elements.
Explore the document object model in Selenium, including window, document, and element, and how its structure of HTML, head, and body enables locating web elements with locators during automation.
Learn to locate elements by ID in Selenium, using the ID locator to identify unique DOM elements, inspect the element, and send keys to the Google search bar.
Locate elements by name in Selenium to identify elements via the name attribute, mirroring the id locator and selecting the first match when multiple share the same name.
Learn how to locate elements using XPath in Selenium, exploring manual XPath construction and copy XPath methods, and apply attribute-based selectors to identify web elements.
Discover how to locate elements in Selenium with CSS selectors, combining tag, id, class, and attributes; use CSS selectors when id or name are unavailable, demonstrated with a search input.
Use selenium's link text locator to identify hyperlinks by exact or partial text from anchor tags, verify the link is displayed, and handle duplicate texts with the first matching link.
Learn how to locate elements by class name in Selenium using Python, including handling multiple class names and sending input with send_keys to the target element.
Identify and write test scenarios for web and app testing by reviewing requirements, defining user actions, and documenting expected outcomes to guide test scripts.
Learn how to locate and click a button in Selenium by name submit, after entering form values. This demonstrates clicking the send button to submit data.
Automate form data entry with Selenium and Python, sending values to input boxes, radio buttons, check boxes, and dropdowns, and observe the results in the browser.
Learn to handle checkboxes with Selenium WebDriver, selecting multiple values using name locators (bike, boat, horse) and understanding how checkboxes differ from radio buttons.
Learn to verify a button's enabled state on the it learn 360 website using Selenium WebDriver's isEnabled method, locating the element with XPath and interpreting the boolean result.
Learn to automate dropdown menus with Selenium WebDriver using the Select class, including select by index, by value, and by visible text, handling single and multiple selections.
Learn to handle selenium alerts on web pages, including simple, confirmation, and prompt alerts, using switch to, accept, dismiss, and send keys.
Learn to handle radio buttons with Selenium WebDriver, using a common locator and XPath, and how the last selected value passes when multiple options share a name.
Demonstrate how accordions work in Selenium WebDriver by clicking sections to reveal hidden content, with a practical XPath-based automation walkthrough.
Explore how to identify and automate broken links in selenium by fetching all a tags, verifying URLs with HTTP requests, and reporting links that return non-200 responses.
Learn how Selenium handles timing with unconditional and conditional synchronization, using thread.sleep and wait methods to pause and wait for elements, ensuring reliable automation.
Master implicit waits in Selenium to handle dynamic web elements with a timeout. Default timing runs 0 to 3 seconds, and may extend to 10 seconds if needed, then proceed.
Learn how explicit waits differ from implicit waits in selenium, using WebDriverWait and until with expected conditions like visibility of element located, element to be clickable, and presence of element.
Explore fluent wait, an enhanced explicit wait that polls for a web element at regular intervals, with timeout, ignoring exceptions during the wait, and applicability to ajax-loaded elements.
Learn how selenium web drivers handle pop ups, differentiate them from alerts, and use window handles to switch, maximize, and close pop up windows.
Understand iframes and how to embed external pages, then switch to the iframe context to interact with elements using Selenium WebDriver by index, name, or web element.
Learn how to handle nested iframes in Selenium by switching to the outer frame, then the inner frame, performing actions like drag-and-drop, and returning to the parent.
Learn to manage multiple browser windows in Selenium using window handles. Use get window handle, get window handles, and switch to navigate between windows, frames, and alerts.
Learn how to use the navigate command in Selenium WebDriver to switch between pages, using navigate to, navigate back, and navigate forward to control browser history.
Understand keyboard and mouse handling in Selenium automation using the action class, including key down, key up, send keys, click and hold, context click, double click, and drag and drop.
Learn to perform drag and drop in selenium using the action class, from a source element to a target element, with frame switching when necessary.
Learn to perform a right-click in selenium using the context click method of the action class on a web element, with build and perform invoked by the Actions object.
The video demonstrates mouseover in selenium using the action class move to element, then build and perform to hover over a target element.
Learn how to automate web page scrolling with Selenium using scroll to and scroll by, via JavaScript executor, to reach specific coordinates or bottom of the page.
Master switching between tabs and windows in Selenium 4 using the new window API, including window handles, tab vs window types, and practical examples with Google and Facebook.
Explore Chrome Options in Selenium to customize Chrome driver sessions and extend capabilities. Create a Chrome Options object, add extensions, and pass options to the Chrome driver constructor.
Learn how Selenium's desired capabilities set browser properties for cross-browser testing, using key-value pairs for browser name, version, platform, and driver details, alongside Chrome options.
Capture selenium webdriver screenshots to diagnose failed tests, using take screenshot and get screenshot as with an output type, and save to a specified location such as username.jpg after login.
Upload a file using Selenium WebDriver with the send keys method to locate the upload button, pass the file path, and click upload to complete the process.
Learn how to download a file with Selenium WebDriver by configuring Chrome options to set the download directory, using experimental preferences, and clicking a link to save the file.
Automate the Amazon product search using selenium and python, locate the search bar by id, send MacBook as the query, and click the search icon in Firefox.
learn to automate an e-learning site registration and login using selenium, including scrolling, locating elements by id or xpath, and submitting user details to register and then sign in.
Learn to build a selenium automation framework with data driven testing, maven structure, pom.xml, Apache POI, and page object model. Generate Extent reports and use Jenkins.
Explore TestNG, an automated test framework inspired by JUnit, and learn to generate test reports, track test statuses (passed, failed, skipped), run individual cases, and understand XML-driven execution with Selenium.
Install testing on Eclipse IDE via the Eclipse Marketplace, search for testing, click install, accept the trust risk, and restart Eclipse to complete the installation.
Learn to create a Maven project structure in Eclipse, including setting group id and artifact id, creating a simple project, and configuring pom.xml with Selenium and testing dependencies.
Add dependencies to a Maven project by editing pom.xml and using the Maven repository to import selenium and testing jars, enabling compilation and execution.
Learn how TestNG priority assigns numeric values to tests to control their execution order. Apply these priority values to maintain a defined sequence across test annotations.
Demonstrates a real-time Selenium test using TestNG priority to run login, logout, and setup steps within a common test case, with implicit waits and page interactions.
Learn how test dependencies enforce execution order using depends on method, linking child tests to a parent, and compare this with priorities, including skip behavior when the parent fails.
Explore TestNG dependency by reusing a login example to illustrate depends on methods, which control execution, with setup, login, logout, and skipped steps after a failure.
Learn to disable, enable, ignore, and skip a test case using enabled attributes, test annotations, and skip exceptions, and understand how skipped tests appear in reports.
Explore TestNG annotations and their before and after configurations to control test flow, setup, and teardown across tests, classes, methods, and groups.
Explore TestNG annotations with a real-time example, showing how before test, after test, before method, and after method sequence drive per-test steps and report flow.
Explore data providers and data-driven testing, showing how a single test method can run with multiple data sets by returning object arrays and applying data provider annotations.
Explore TestNG data provider examples by creating a data provider method returning an Object[][] and running a login test with multiple credentials, showing repeated executions for valid and invalid logins.
Understand the concept of assertions in testing by comparing expected and actual results. Verify whether the application's state matches expectations and how failures generate test reports.
Explore hard and soft assertions, where hard assertions stop execution and soft assertions continue, and learn methods like assert equal, not equal, true, false, null, and not null.
Learn to verify login outcomes with TestNG assertions by comparing the dashboard text using assert equals, and practice true and false asserts for boolean checks.
Explore TestNG groups to organize tests into cohorts and run selected groups with a single XML suite. Use include and exclude to selectively execute tests and improve efficiency.
Apply include and exclude concepts to group test cases in TestNG using the groups XML, learning how to configure run tags and test.xml to control execution.
Explore a real-time TestNG groups example in automation testing, adding a login test and a search test for HTML for beginners, and configuring the test engine to run selected groups.
Explore TestNG listeners to customize test execution and generate reports at each stage, enabling logging, reporting, screenshots, and failure handling across the test lifecycle.
Learn how the ITestListener interface listens to test events and how to implement on test start, on test success, on test failure, and on test skipped to generate custom reports.
Implement the ISuiteListener interface to listen to the test suite life cycle, using onStart and onFinish to handle events before the suite starts and after it ends.
Learn how the AI execution listener monitors the start and end of test execution, starting or stopping the server with on execution start and on execution finish methods.
Understand the iinvoked method listener, which runs before and after every method to manage setup and cleanup in tests. Implement it with an interface and an XML configuration.
Learn to generate HTML extent reports for test automation using the extent reports, the extent spark reporter, and the extent test classes to display pass or fail results.
Learn to create extent reports in Selenium tests with Maven dependencies, Spark reporter, and attach reporter, then generate an HTML report dashboard showing test status, info, and pass results.
Create a GitHub account and repository to host and version-control code for automation testing projects. Upload, push, and pull code to collaborate with your team on GitHub.
Learn to push and pull code with GitHub using Eclipse. Create repositories, commit changes, and push with a personal access token, then pull updates into your local project.
Explore Selenium with Python to automate cross-browser browser tasks using WebDriver. Learn easy Python integration, locators like ID, name, XPath, and how Pytest and Jenkins support CI/CD.
Install python from the official website and download the latest version, which includes pip. Check python and pip versions in the command prompt to confirm installation.
Install PyCharm on Windows, choose the free community edition, and create a QA Selenium sessions project to prepare for adding Selenium files in the next video.
Install selenium in your python project with PyCharm, configure the python interpreter, and install the selenium package; then download the Chrome driver matching your Chrome version and test with WebDriver.
Learn how selenium WebDriver uses elements and locators to interact with web pages, find element, send keys, click, and submit, with id, name, class, CSS selector, XPath, and link text.
Locate elements by ID in Selenium WebDriver to quickly and reliably access unique page elements, then send keys to input boxes like the Google search field.
Locate web elements by name in selenium WebDriver using the name attribute, especially for form inputs. Compare with id locators and use name when available, with XPath as a fallback.
Learn how to locate elements by class name in selenium web drivers, using the class attribute to target groups sharing styling while noting non-unique and dynamic class limitations.
Learn how the tag name locator in Selenium identifies and selects groups of elements, using find_elements to extract all a tags on a page and print their href values.
Learn to locate elements in Selenium WebDriver using css selectors, a precise method that uses tag names and attributes when id or name locators are unavailable.
Master locating and clicking hyperlinks with the link text locator in Selenium WebDriver. Identify a link by its exact visible text and test with a Gmail example.
Master XPath locator in Selenium WebDriver to locate elements when no id, name, or class is available, using xml path expressions, copying XPath, and exploring multiple XPath writing methods.
Automate form filling with Selenium in Python by locating name, email, website, and comment fields using name locators, sending inputs, and clicking the send button to submit.
Learn how to handle radio buttons in selenium WebDriver by locating elements, clicking to select options, and using is selected to verify the selection, with XPath and name locators.
Master handling checkboxes in Selenium by selecting multiple options, understanding default selections, and implementing reliable checkbox interactions with WebDriver code.
Learn to handle dropdowns in Selenium WebDriver with the select class, using select by visibility text, by value, and by index, including single and multiple select with deselect.
Explore how to handle alerts in Selenium, including alert, confirmation, and prompt types, by switching to the alert, using accept, dismiss, and send keys, and retrieving alert text.
Learn to navigate multiple browser windows with Selenium WebDriver by switching between windows, handling window handles, and performing actions on both Google's page and the demo site.
Master handling nested iframes in selenium web driver by switching to the first frame, then to nested frames, interacting with elements, and returning to the main document.
Learn to perform right-clicks in selenium web driver using the action chains class. Initialize actions, locate the element, and call context click followed by perform to automate context menu interactions.
Learn to perform mouseover actions in selenium WebDriver using the action chain class to reveal dropdown menus and tooltips on hover, via move to element and perform.
Master drag and drop in Selenium by switching to the frame, locating the source and destination elements, and using action chains to perform the drag and drop.
Apply implicit wait in Selenium to poll the DOM for up to a set time when locating elements, reducing no such element exceptions and ensuring login interactions complete.
Learn to apply explicit wait in Selenium with WebDriverWait and expected conditions to target a specific element, ensuring visibility or clickability before actions.
Explore the Robot Framework, an open source automation tool for acceptance testing and robotic process automation, using keyword driven, tabular test cases in Python and Selenium.
Master your first Robot Framework test by setting up PyCharm, adding Selenium and Robot Framework libraries, and organizing tests into settings, variables, test cases, and keywords.
Explore the four Robot Framework sections—settings, variables, test cases, and keywords—and learn how to import libraries, manage data with variables, and build reusable keyword-driven test scripts.
Learn robot framework locators like id, name, xpath, and css, and use a resource file to organize variables and keywords, with setup opening the browser and teardown closing it.
Discover how to use arguments in Robot Framework keywords for reusable login tests with username and password. Use get element count to count page links and log result to console.
Learn to handle dropdowns and alerts in Robot Framework by testing radio buttons, checkboxes, and dropdown selections, and by accepting or dismissing alerts with Selenium keywords.
Learn to parameterize Robot Framework tests by passing multiple arguments with a template, covering invalid usernames, passwords, and special characters, and running tests from the terminal.
Learn how Robot Framework automatically generates logs, reports, and screenshots for Selenium tests, with easy access to log.html and report.html and automatic screenshot capture on failure.
Are you ready to launch your career in automation testing but feel overwhelmed with where to begin?
This Master Automation Testing course is designed to take you from zero to job-ready, whether you're a manual tester, fresher, or someone switching careers. You’ll learn automation from the ground up using real-world tools like Selenium WebDriver, Java, Python, TestNG, Robot Framework, and GitHub.
We start with Java and Selenium—setting up your environment, working with locators, handling buttons, dropdowns, alerts, and building real test scenarios in Chrome, Firefox, and Edge.
Then, we move to TestNG, where you’ll organize your test scripts with annotations, priorities, dependencies, groups, listeners, and generate detailed Extent Reports.
Next, we dive into Selenium with Python—you’ll learn how to automate forms, handle mouse actions, waits, iframes, and multiple browser windows using Python and PyCharm. This section is especially beginner-friendly and uses real-time projects to teach practical skills.
Finally, we introduce the Robot Framework—a keyword-driven automation tool perfect for non-programmers. You’ll build full test flows, handle locators, pass parameters, and generate test reports, all without complex scripting.
Throughout the course, you’ll complete projects like automating product searches on Amazon and creating test flows for an e-learning registration process.
By the end of the course, you'll be confident in writing test scripts, running real projects, debugging, generating reports, and using tools that QA professionals rely on daily.
What makes this course different?
No fluff. Every module teaches something practical.
Tools covered include Java, Python, Selenium, TestNG, Robot Framework, GitHub
Includes real-time test automation projects you can add to your resume
Beginner-friendly and career-focused
Covers both coding-based and no-code test automation
Whether you're preparing for an automation job, learning Selenium with Python, or mastering Robot Framework for your team — this course will give you the skills and confidence to succeed.