Selenium WebDriver with Java
Selenium WebDriver is a web framework that permits you to execute cross-browser tests. This tool is used for automating web-based application testing to verify that it performs expectedly. Selenium WebDriver allows you to choose a programming language to create test scripts. For the purpose of this course, we shall be using Java.
Learning Outcome
By the end of the course, the learner shall have skill and understanding of the following:
- Selenium Webdriver
- Automating Web applications in all supported Browsers
- Strategy to handle Rich Web UI using Advanced WebDriver
- Selenium Grid
- TestNG
- Maven
- ANT
- Jenkins
- Log4j
- Test Execution reports
- Cucumber
- Data driven framework
- Hybrid Framework
- Page object Model Framework
- DataBase testing with Selenium
- Performance testing with Selenium
- Framework Design from scratch
Prerequisites
- Access to high speed internet
- Webcam and microphone
- Admin / root access for the OS
- Ability to remote access using SSH
- Basic understanding of how the file system works
- Basic understanding of how the internet works
- Programming experience in any language
Outline
This four 5 day course shall cover the following topics:
- Java
- Understand what different versions and forms of java are for:
- Java for application development
- Java for mobile app development
- Java for Web Application development
- Java as in integration tool
- Coding principles
- Algorithms
- Flow
- Logic
- Subroutines
- Dependencies
- Memory
- Coding in Jshell
- Hello World
- Mathematics operations
- Basic I/O
- Manipulation
- Expressions
- Variables
- Data Types
- Operators
- Conditions
- Loops
- Understand what different versions and forms of java are for:
- Installation and environment
- Java and Maven
- Eclipse IDE
- Creating New Maven Project
- Configuring Maven Project
- Troubleshooting Project Issues
- Application under test
- Creating first Selenium test class
- Working on first test method
- Running TestNG test
- Debugging test problems
- Page elements and locators for Selenium
- WebElement
- WebDriver commands
- Invalid locators
- Verifications and assertions
- Basic Test
- TestNG
- TestNG Annotations Introduction
- Xml File
- Execution Order of TestNG Annotations
- Skipping Tests in TestNG
- Prioritise Tests in TestNG
- Assertion in TestNG : Verification & Validation
- TestCase Grouping in TestNG
- Set TestCase Dependency in TestNG
- Test Parameterisation Using testng.xml File
- DataProvider : Test Parameterization
- Listeners in TestNG
- Run Multiple TestNG Suites
- Reporting in TestNG
- WebDriver
- Implement First Selenium Script and Execute
- Execute Selenium with Different Browsers
- Difference in Close & Quit
- Invoke Browser Dynamically
- Import JavaDoc in Selenium Project
- Options Class in Selenium : FireFoxOptions & ChromeOptions()
- Architecture of Selenium WebDriver
- Waits in Selenium
- TimeOuts in Selenium
- Implicitly Wait in Selenium
- Explicit Wait in Selenium | Handle Ajax Calls in Selenium
- WebElement
- Locators in Selenium
- Find Element in Selenium
- Find Elements in Selenium
- Create XPath for WebElement
- Create Customised XPaths
- Create CSS Selector in Selenium
- Find Broken Link on WebPage
- Handle Frames in Selenium
- Check Visibility of Web-Element on Web-Page
- Extract Elements form Specific Part of WebPage
- Manage Drop Down in Selenium
- Handle Browser Windows/Tabs in Selenium
- Handle Alerts in Selenium
- KeyBoard & Mouse Events
- Handle AJAX Auto Suggestions
- JavaScript Executor in Selenium
- Practical Implementations
- Cucumber
- Automation and Testing
- Selenium Grid
- Parallel Test Execution
- Cross Browser Test
- Assessment
Practical, connected learning
My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.