SELENIUM Training Overview
Introduction
• Why Automation
• When to start Automation
• Where to use Automation
• Scope of Automation in future
• What is an Automated tool
• How to learn any Automated tool
• Types of Automated tools
Selenium Components
• Selenium IDE
• Selenium RC
• Selenium Web Driver
• Selenium GRID
INTRODUCTION TO JAVA
• Installing Java
• What is Eclipse?
• How to install Eclipse
• What is the need of Eclipse?
• Why we use Eclipse and Selenium together
Starting with Eclipse
• How to create a project
• How to create a package
• How to create a class (.java file)
• How to create a file (properties file)
Classes and Interfaces
• How to create an object (call by reference, call by value)
• Data types
• How to access the nonstatic functions using objects reference
• How to use Static Global variables through class name
• How to use Static Global functions through class name
• How to create constructor
• What is the use of constructor
• Inheritance
• How to access classes across packages
• Accessing modifiers (Public, Private, Default, Protected)
• String Class, Object class
• What is an interface
• How to create and use interface
WEB DRIVER Introduction
• What is Web driver
• Why Web driver
• Differences between RC and Web driver
• How to configure web driver in eclipse
Classes that implements web driver
• Fire fox
• Internet Explorer
• Chrome
• IPhone
• Android
Operational Overview of Selenium
• How to give instructions to Selenium web driver
• How to give information to Selenium web driver
• Internally what is happening during execution
Object Identification
• Installing Firebug add on in Firefox
• Installing Firepath add on in Firefox
• What is Firebug
• How to use Firebug
• When to use Firebug
• What is the use of Firepath in Firebug
• What is XPath
• Where to use XPaths in the Script
• Why to use XPaths
• Identifying the web elements using ID
• Identifying the web elements using Name
• Identifying the web elements using Link name
• Identifying the web elements using Class
• Identifying the web elements using XPath
• Identifying the web elements using Tagname
• Handling the different web elements like
• Input boxes
• Buttons
• Weblist
• Radio Buttons
• Check boxes
• Links and etc.,
• Making own XPaths with out using Firebug
• Creating the Object Repository
• Benefit of Creating object repository
• How to use object repository
JAVA IN DETAIL
• Variables (local, global)
• Constants
• Arrays
• Conditional statements
• Looping statements
• Operators
• Functions (Input parameters and return types)
• Overloading and Overriding
Additional Concepts of Java used in Selenium
• String class
• Object class
• Array list class
• Hash table class
• Collection API
• Reflection API (Keyword driven frameworks)
• POI API (Hybrid FW [keyword+data driven])
• Creating Properties file
• Reading properties file
• Reading / writing text file
• Reading / writing XLS file
• Exception handling (Try, Catch, Throwable Class, Throw, Throws, Final and Finally)
• Different types of exceptions
• Need of exception handling in Selenium
• Jar file
SELENIUM LIFE CYCLE
Phase-I
• Test Planning
Phase-2
• Generating the basic test
Phase-3
Enhancing the test
• Introduction
• Checking with Assertions
• Synchronizing the test
• Implementing implicit wait statement
• Parmeterizing the test
• Reading the data from XLS File
• Using the test data during data driven testing
Inserting the Programmatic Statements
• Normal statements
• Conditional Statements
• Comments
• Function Call statements
Phase-4
Debugging the Test
• What is debugging
• When to do debugging
• Benefits of debugging
• Running the script according to our desire
• Pausing the Script execution
Phase-5
• Executing the Test
Phase-6
• Analyzing the Results
ADVANCED CONCEPTS OF SELENIUM
• Dynamic objects handling
• Pop up handling
• Error handling
• Java Script alert messages handling
• Simulating the keyboard key press events
• Dynamic Web table Handling
• Extracting data from web table
• Mouse movement with Selenium mouse interface
• Setting page load timeout
• Simulating front and back button click in browser
• Listeners using web driver eventlistener
• Practical Usage of Listeners in Selenium
• Moving mouse on an object and right clicking on it.
• Finding co-ordinates of web object
• Reporting errors
SELENIUM IDE
• Installing Selenium IDE
• Recording Script
• Running Script
• Operational overview of Recording
• Operational Overview of Running
• Running Script line by line
• Inserting break points
• Inserting comments
• Inserting wait statements
• Installing Firebug
• Installing Firepath
• Using XPaths for identifying objects
• Saving the Script
• Running the single line of Script
• Analyzing the Results in log
• Using the Reference for understanding the commands
• Understanding about target and value
• Identifying the objects using ID, Name, Link and etc.,
• Table View
• Source view
• Why companies are not encouraging the Selenium IDE
FRAME WORKS
Test NG Frame work
• What is Test NG
• Installing Test NG
• Test NG Annotations
• Usage of Annotations
• Skipping Tests
• Running Tests in Test NG
• Assertions and Reporting errors
• Test NG reports
JUnit Frame work
• What is JUnit
• Configuring JUnit in Eclipse
• JUnit 4 Annotation
• Running Test in JUnit
• Skipping Tests
• Using Assertions and Reporting errors
Test NG and Hybrid frame work (Keyword + Data driven)
• Overview of hybrid frame work
• Preparing XLS file with Test cases and key words
• Preparing XLS file with test data
• Reading XPaths from Properties file
• Implementing the keywords using the Reflection API
• Implementing the Tests
• Assertions and reporting errors
• Parametrizing Tests
• Repeating the test with different sets of data
• Running the tests
• Analyzing the results