[accordions id="207"]

Selenium

Overview:
Selenium is the portable software testing framework for web applications. It provides a record/playback tool for authoring tests without learning a test scripting language (Selenium IDE).  It is an open source project that allows testers and developers alike to develop functional tests to drive the browser. It can easily deploy on Windows, Linux, and Macintosh platforms.
Training Objectives of Selenium:
The main objective of the course is designed for Software professionals with Manual Testing knowledge and test automation exposure is required. It is well suits for beginners as well as manual testers who want to have automation exposure. Students must be able to go through all the techniques of writing effective automated web tests using Java and C#. Our course will also teach you Data Driven Testing.
Target Students and Prerequisites:
Students must have basic knowledge on Manual Testing, HTML/JavaScript, Java Concept
Java  Introduction
TOPICS

Selenium Overview
Installing Java
Installing Eclipse
Features of Java
Why Java for Selenium
First Eclipse Project
First Java program
Concept of class file
Platform independence
Datatypes in Java
String class
If statements
Loops, Arrays and Functions
TOPICS

Conditional and concatenation operators
While Loop
For Loops
Practical Examples with loops
Usage of loops in Selenium
Single Dimensional Arrays
Two Dimensional arrays
Practical usage of arrays in Selenium
Drawbacks of arrays
What are Functions?
Function Input Parameters
Function Return Types
Object Oriented Programming- 1
TOPICS

Local Variables
Global Variables
Static and Non-Static Variables
Static and Non-Static Functions
Creating Objects in Java
Meaning of static
Why is main method static?
Object and Object References
Call by reference and Value
Constructors
Usage of Objects in Selenium
Object Oriented Programming -2
TOPICS
Concept of Inheritance
Interface
Overloadings and Overriding Funtions
Example on inheritance
Object Class
Usage of Inheritance in Selenium
Packages, Access Modifiers/
Exception Handling
TOPICS

Relevance of Packages
Creating Packages
Accessing Classes Across Packages
Good Features of eclipse
Accessing modifiers - Public, Private, Default, Protected
Exception hading with try catch block
Importance of exception handling
Exception and Error
Throwable Class
Final and Finally
Throw and Throws
Different Types of Exceptions
Need of exception handling in Selenium framework
Collection API/
Reflection API

TOPICS

 Introduction to Collections API
ArrayList Class
HashTable Class
Using ArrayList and HashTable of Collection API in Selenium framework
Reflection API usage and importance
Using Reflection API to make keyword driven Selenium framework
String,File Handling, Log4j, /Handling XLS files
TOPICS

 String class and functions
Reading/Writing Text Files
Reading Properties File in Java
Concept of jar file
POI API in java
Reading/Writing Microsoft XLS Files
Log4j API for Logging
Usage of Log4J in Selenium
Junit 4 Framework / ANT
TOPICS

 What is JUNIT
Configuring Junit 4 in Project/Eclipse
Junit 4 annotation
Running Test in Junit
Skipping Tests
Parameterizing Tests
Using Assertions
Reporting Errors / ErrorCollector
Batch Running - Custom Runners
What is Ant
Downloading and configuring Ant
Build.xml configuration
HTML Report generation using Ant
Building a BAT file to run tests using ANT
TestNg Framework / ANT
TOPICS

 What is TestNg
Installing TestNg in Eclipse
TestNg annotations
Understanding usage of annotations
Running a Test in TestNg
Batch Running of tests in TestNg
Skipping Tests
parameterizing Tests - DataProvider
Assertions/Reporting Errors
TestNg Reports
Advantages over Junit
Using TestNg in Selenium
What is Ant
Downloading and configuring Ant
Build.xml configuration
XSLT report generation generation using TestNg and Ant
Building a BAT file to run tests using ANT
Selenium WebDriver
TOPICS

 Why WebDriver?
Selenium RC and Webdriver
Downloading and configuring webdriver in eclipse
WebDriver Interface
Drivers for Firefox, IE, chrome, Iphone, Android etc
First Selenium WebDriver Code
Opening multiple browsers at one time
Close and Quit methods in Webdriver
What is Firefox profile
Creating own Firefox profile
Magic of HtmlUnitDriver
Selenium WebDriver – 2
TOPICS

 Installing Firebug and FirePath Addons in Firefox
Using Firebug and Firepath
HTML language tags
Handling Links with WebDriver
Extracting Xpaths and relevence of Xpaths
Identifying WebElements using id, name, linkname, class, xpath, tagname etc
Handling Input Box/Buttons
Handling WebList
Handling Radio Buttons, CheckBoxes

 

Selenium Webdriver – 3
TOPICS

 Dynamic objects
Capturing screenshots with WebDriver
Window handles
Tabbed browsing with Selenium
Example of Tabbed browsing
Pop up handling in Selenium
Example of Pop up handling
Managing variable xpaths
Certificate error handling using WebDriver- - NEW
Selenium WebDriver – 4
Topics

 Pausing execution for sometime
Introducing wait for sometime
WebDriverWait Class
Handling JavaScript alert messages with Selenium
Simulating the Keyboard Keypress event
Simulating Pressing Enter Button of Keyboard

Selenium 2.0 Features – 3
TOPICS

 Extracting Data From WebTable
Dynamic WebTable Handling - - NEW
Attaching files with Selenium
Changing your facebook profile picture by attaching new picture
Mouse movement with Selenium- Mouse Interface
Working with Caleder using Selenium
Handling Ajax Autosuggests
Handling Google Ajax Autosuggests
Setting the page load timeout- WebDriver.Timeout Interface - - NEW
Handling Frames in Web Page- - NEW
Selenium 2.0 Features – 5
TOPICS

 Simulaing front and back buton click on Browser using selenium
Assigning Firefox profile parameters
Downloading files using selenium
Selenium Javadocs
Listeners- Using WebDriverEventListener
Practical usage of Listeners in Selenium
Moving a mouse on a Object and right clicking on it
Finding Coordinates of a Web Object
Actions class in Webdriver- - NEW
Handling CSS menu with Action class- - NEW
Handling CSS menu with JavaScriptExecutor- - NEW
JavaScriptExecutor example- - NEW
Seleium 2.0 – Exercises

TOPICS

Dynamic Objects Exercises
Example 1 - Gmail.com: Print the gmail's increasing space
Example 2 - Check Links on Quikr.com
Example 3 - Scrolling the page side bar
Example 4 - Print names of all facebook friends
Example 5 - Count/Verify items in shopping cart
Example 6 - demo.virtuemart.com Exercise- - NEW
Junit and Data Driven Framework
TOPICS

Overview of Data driven framework
Building the Test Base Class
Using Annotations of Junit
Reading XPATHS, Configuration from properties file
Initialize the Webdriver
Building the Test Base Class
Implementing WebDriver Implicit Wait
Implementing tests and batch running them
Repeating a test with different Data
Building utility functions
Parameterizing tests using XL Files
Controlling Execution order from XL Files
Assertions and Reporting Errors / ErrorCollector
Storing Screenshots of errors
Running the framework through ANT
Generating the HTML reports
Emailing test reports
Creating a BAT file for project execution
TestNg and Data Driven Framework
TOPICS

Overview of Data driven framework
Building the Test Base Class
Using Annotations of TestNg
Reading XPATHS, Configuration from properties file
Initialize the Webdriver
Implementing WebDriver Implicit Wait
Implementing tests and batch running them
Repeating a test with different Data
Implement logging with Log4J API
Building utility functions
Parameterizing tests using XL Files
Controlling Execution order from XL Files
Assertions and Reporting Errors
Storing Screenshots of errors
Running the framework through ANT
Generating the XSLT reports
Creating a BAT file for project execution
Emailing Test Reports

TestNg and Hybrid (Keyword+Data) Framework

TOPICS

Overview of Hybrid Framework
Building XLS File Having Test Cases and Keywords
Building XLS File Having Test Data
Building Base class
Reading XPATHS, Configuration from properties file
Implementing WebdriverWait
Implementing the keywords using the reflection API
Implementing tests
Assertions and Reporting Errors
Parameterizing tests using DataProvider and XL Files
Repeating a test with different Data
Running the framework through ANT
Generating the reports
Emailing test reports
Creating a BAT file for project execution