Course Content
WebDriver Concept and Functions in Practice
- Introduction to WebDriver Interface
- Configuring WebDriver in eclipse
- Opening & Closing browsers
- Creating Firefox profile
- Implementating HtmlUnit Driver
- Using Firebug and FirePath Add-ons in Firefox
- Identifying WebElements using id, name, link text, class,xpath, tagname etc
- Handling Input Box/Buttons, WebList, Radio Buttons,Checkboxes & Links
- Extracting links and other WebElements
- Capturing screenshots
- Window Handles, Handling Pop-up windows & iFrames
- Simulating the Keyboard Keypress events & Mouse movements
- Handling Dynamic WebTables, Calendar & Menu
- Handling sliders, draggable, drag & drop Actions
- Attaching & Downloading Files
- Practical usage of Listeners in Selenium
- Cookies Testing
- Data Parameterization with MS Excel
- Test Logging & Reading Configuration Files
Limitations and common test automation challenges
- Synchronization
- Ajax Testing
- Handling JavaScript alert messages
Advanced WebDriver
- FirefoxDriver, IEDriver, ChromeDriver
- Implicit and Explicit WebDriver Wait Conditions
- Invoking JavaScript Functions
- Managing variable xpaths
JUnit
- Configuring Junit 4 in Project/Eclipse
- Junit 4 annotations
- Running a Test
- Skipping Tests
- Parameterizing Tests
- Using Assertions
- Reporting Errors / ErrorCollector
- Batch Running - Custom Runners
- Downloading and configuring Ant
- Build.xml configuration
- HTML report generation using Ant
- Building a BAT file to run tests using ANT
TestNG
- Installing TestNg in Eclipse
- Understanding usage of TestNg annotations
- Running a Test
- Batch Running of tests
- Skipping Tests
- Parameterizing Tests
- Assertions/Reporting Errors
- TestNg Reports
- Advantages over Junit
- Using TestNg in Selenium
- Downloading and configuring Ant
- Build.xml configuration
- XSLT report generation using TestNg and Ant
- Building a BAT file to run tests using ANT
Apache Maven
- Installing/Configuring Maven
- Archetypes in Maven
- Creating maven project through command line
- POM.xml
- Importing Archetypes
- Maven Repositories
- Building a selenium project and running it through Maven
- Running Ant Tasks with Maven Antrun Plugin
Selenium Grid-2
- Selenium grid 2 introduction
- Grid Hub, Grid Node
- Configuration of Grid
- Setting up Hub, Node
- Grid Console
- Node config json format file
- TestNG for Parallel execution
- DesiredCapabilities Object, RemoteWebDriver Object
- End to end scenario building and execution on Grid -demonstration on one node
- End to end scenario building and execution on Grid -demonstration on multiple nodes on virtual machine and on multiple browsers
A sample Hybrid Framework Implementation