Course Content
Selenium with Java
Course Objective
- Understand Oops / java concepts
- Selenium IDE, RC
- Selenium WebDriver tool in depth, it’s features & components
- Building a new Test Framework by using Web Driver, Test NG, and Maven
Selenium Introduction
- Selenium Introduction
- What is Selenium and Why Selenium
- Use of Automation Testing?
- Explanation of Selenium and its advantages
- Differences between Selenium and QTP
- Selenium Components
- Introduction of selenium Components
OOPs concepts and Core Java Introduction
- OOPs concepts
- Setup Java environment – Download JDK and Setup eclipse
- Java programming concept
- Class, Object, variables, methods, Packages
- Conditions and loops
- Access and non-access modifiers
- Advanced Java Programming
- Interfaces, Inheritance
- Collections, Exceptions
Selenium IDE and RC Introduction
- Installing Selenium IDE
- “Selenese” – Selenium Commands
- Actions, Asserts, Assessors.
- Developing Test Cases & Test Suites with Selenium-IDE
- Introduction to Selenium RC
Installations
- Eclipse-Oxygen
- JDK 1.8
- Firefox 47.0.1, firebug and file path
- Set up TestNG, Maven and Selenium (2.53.1 &3.0 +) for eclipse
Selenium WebDriver 2.0 and 3.0 Introduction
- Selenium WebDriver Introduction
- WebDriver Vs RC
- Download and Configure WebDriver with Eclipse
- Simple Testcase
- Open and Close Browser
- Cross Browser Testing – Firefox, IE, Chrome, Edge.
- UI elements Locators.
- Identifying Web Element using id, name, link text, Partial Link Text class Name,
- XPath, CSS Selector and Tag Name.
- Handling various Web Element using WebDriver
- Handling Mouse movements and Keyboard Events
- Gecko-Driver
- Verification Commands
- How to get Title
- How to get Current URL
- How to get Page source
- How to get Window Handle
- How to get Window Handles
- How to get Text
- How to get Attributes
Validation commands
- Is Selected
- Is Enabled
- Is Displayed
- How to operate with Web Table
- How to Handel Alerts in webpage
- Switch Commands
- how to switch windows or Tabs.
- how to switch Alerts.
- Synchronization Commands
- Thread. Sleep ()
- Implicit Wait
- Explicit Wait
- File uploading using Auto-It and Robot.
Testing Framework and Tools
- Introduction of the Testing framework
- Types of frameworks
- Tools for developing Test Framework
- TestNG introduction and Configuration with eclipse
- TestNG Annotations and Data Providers
- Creating Test Suit with TestNG
Framework
- Modular Framework
- POM
- Data driven
- paramitarization
- Hybrid Framework
Develop Hybrid Framework
- Developing Hybrid Framework for Web Application using WebDriver /TestNG and Maven
- Use external Data for Testing (Excel sheet, XML files, Property file)
- Reading and understanding reports
- Screenshots of failed Test case
Configuration Management
- Jenkins Installation
- Maven Installation
- Dependencies and configure Maven Project
- Integrate Maven projects in Jenkins
Introduction
- Why do we need Selenium? (Though, there are many automation tools are available)
- Selenium with Java vs. Python (pros and cons)
- Program structure
Python Programming
- Basic Programming in Python
- Function & Parameters in Python
- Python Data structures and operation
- File Operations
- Modules
- Object Oriented Programming
Execution steps
- Environment setup (python, PyCharm, Selenium and etc.,)
- Introduction with Python and PyCharm
- First Script on Selenium
Selenium- Web Driver
- Introduction to Web driver and Remote vs. Local
- Guide to install Web driver
- Creating your first script on Web driver
- Accessing Forms in Web driver
- Accessing Links and Table content in Web driver
- Remote web driver
Selenium with Python
Automation Framework
- Advanced Web element access method- Contains, Sibling, Ancestor etc.,
- Framework designing methods
- Framework adaptation
- Feature Testing Automation
- Report Generation out of Automation
- Real time Automation and the Challenges
PyAutoGUI – Controlling Mouse and Keyboard
- Introduction to pyautogui
- Accessing Flash content using pyautogui
- Controlling Keyboard and Mouse events on web driver
Selenium with c#
Collapse Selenium IDE
- Introduction
- Record & Playback
- Command types
- Using Verifications
- Using Asserts
- Exporting Test Case/Suite to C#/NUnit
Collapse Selenium Web driver
- Introduction
- Setting up new project
- Project Structure
- Understanding DOM Structure
- Finding Elements
- Assert Types
- Working with Dynamic Elements (Radio/Checkbox/Dropdown/Select Element)
- Tables and Data grid
- XPath
- Embedded JavaScript
- Cross Platform Browser Testing
Collapse Selenium Framework & Infrastructure
- Creating Data Driven Tests (XML/DB/Excel)
- Linq queries (DDT)