- Introduction
- Demo: See WebDriver in Action
- Installing Selenium IDE
- Record & Run with Selenium IDE
- Modifying Test Data
- Exporting Selenium IDE to Java Code
- Preparing the Test Environment
- Getting Started with Java and Eclipse
- Introduction to Selenium
- Creating the Login Test Outline
- Opening a Web Browser with Selenium
- Understanding HTML and the DOM
- Finding Elements using Chrome
- Simulating User Actions on a Web Page
- Capturing Text on a Page
- Capturing the Page Title and Closing the Browser
- Automation with Selenium WebDriver
- Overview of New Account Application
- Preparing Environment with Firefox and Firebug
- Writing the Test Outline and Opening a Firefox Browser
- Item Locator: By LinkText
- Item Locator: By Name and By ID
- Item Locator: By XPath (Relative and Absolute)
- Item Locator: By CSS Selector
- Comparing Methods and Priority
- Interacting with Form Elements
- Completing the New Account Application
- Finding Elements
- Using Variables to Parameterize Data
- Cross-Browser Testing
- Creating the DriverFactory
- Defining WebElements
- The Radio Button Algorithm
- The Checkbox Algorithm
- Conditional Test Results
- Introduction to JUnit Framework
- Assertions: Generate Test Results
- Annotations: Guiding the Test Flow
- Class Variables within a Framework
- Installing TestNG Framework in Eclipse
- Setting up a TestNG Framework
- TestNG Assertions
- TestNG Annotations
- Preparing a Test Suite
- Managing an XML Test Suite
- The CSV Reader Class
- JUnit @Parameters
- Data-Driven Testing with JUnit and CSV
- The Excel Reader Class
- TestNG @DataProvider
- Data-Driven Testing with TestNG and Excel
- Test Frameworks
- Overview of Booking Application
- Setting up the Test
- Writing the Search Page Test Step
- Modifying the Search Result Criteria (Implicit Waits)
- Selected a Search Result (Advanced XPath Locators)
- Switching Windows and Handling PopUps
- Finishing the Booking and Confirmation
- What is the Page Object Model?
- Setting up a Test with POM
- Implementing the Login Page Class
- Implementing the Dashboard Page Class
- Writing a Test with Page Objects
- Enhance POM with PageFactory
- What is BDD and Cucumber?
- Preparing the Cucumber Environment
- Writing a Feature File in Gherkin
- Writing Step Definition Class
- Writing the TestRunner with JUnit
- Implementing Step Definitions with Selenium
- Enhancing Feature Files with Data Tables
- Parameterizing Data into Step Definitions
- Executing Tests and Fixes
- BDD & Cucumber