Selenium Basics - 1st Month
Selenium Basics - 1st Month
1) Automation : A brief introduction to automation and the need for automation. How
automation will enable you to beat competition and make you get the better jobs in
market.
• What is Automation Testing
• Use of automation Testing
• Tools for Automation Testing
• Why automation is important for you career?
• What is Selenium
• Advantage of Selenium
• Introduction to IDE, RC WebDriver & Grid
2) Java for QA : This class will set you up for understanding Basic OOPs and java
concepts. These concepts will be extremely important for you to become a good
Automation tester. This section is specially designed so that can be followed by any
Manual test very easily.
• Data Types and Variables
• String Class
• Arithmetic Operators & Concatenation operators
• Conditional & Decision Making
• Single Dimensional Array
• Double Dimensional Array
• Loops (For, While, Nested, Do While Loop)
• Classes and Objects
• Class Constructors
• Functions in Java
• Function Input Parameters
• Function Return Types
3) Eclipse IDE : This topic might seem little off place here but it’s very important topic
to understand the tool you are using. Eclipse will the primary choice of development
environment and we will discuss features of eclipse here.
• How to use Eclipse
• How to run, stop, pause
• How to debug in Eclipse
• Understanding console output
• How to put a break point
• How to add Watch variables
• How to find errors from Problem window
• Usage of step into and Step over debug functionality
4) Set up Eclipse : We will start with setting up WebDriver, so that every participant
start flaunting off their newly learnt skills by writing some cool test programs:
• Download and install java
• Download and start Eclipse
• Download and configure WebDriver java client
• Set up a project
• Create packages
• Create a First Java test case
• Import WebDriver Source file
WEEK 2
5) WebDriver Interface : This topic will make you familiar with the concept of
browsers in WebDriver and how to launch basic Firefox browser using WebDriver.
Here we will also talk about WebDriver & WebElement interface which will enable us
to answer many complicated Interview Questions about WebDriver Implementation.
• Architecture of WebDriver
• WebDriver Interface
• WebElement Interface
• Launching Firefox browser
9) Element Identification : This part explains the lifesaver Add-Ons & tools for
Selenium. Finding elements are the most common activity carried out in Selenium.
These tools give us power to easily identify complex elements and help us in saving
lot of time.
10) Tables, Checkboxes & Radio buttons : Many applications involve use of web tables
and list boxes. These skills will help participant to get the expertise on complex tables
structures and write effective automation test.
• Identify table rows and columns
• Extracting values from a cell
• Dynamically Identify Tables Data
• Select class in Selenium
• Drop Down Handle
• Select multiple values from the list
• Select & Deselect operations by Index, Value & Visible Text
11) Launching different browsers using WebDriver : This topic will make you familiar
with the concept of browsers in WebDriver and how to launch different types of
browsers using WebDriver. This will also covers the Challenges faced in using
browser other than firefox.
• Launching IE
• Challenges with IE Browser
• IE driver server and path settings
• Launching Chrome
• Chrome server and path settings
12) Selenium Waits, Alert & Switch Windows : A little complexity will start now
onwards. To use Waits effective is very important for every automation tester. Wait
helps us in switching windows, handling pop-ups, operating alerts correctly.
• Implicit and Explicit waits
• How to use Expected Conditions with Waits
• PageLoadTimeout & SetScriptTimeout property
• Simple use of Thread Sleep
• Concept of Fluent Wait in Selenium
• Strategy to poll for an object
• WebDriverWait and its uses
• Different WaitUntil Conditions
• Managing Ajax based components
• Ways to handle Simple, Confirmation & Prompt Alert
• Concepts of Set Interface in Java
• Difference between Window Handle & Handles
• Switching & Closing Windows, Tabs & PopUps
• Concept of window ID
• Extracting window IDs with Selenium Object reference
WEEK 4
13) Action Class
This gives us power on recently build Application with latest and complex object
features. Hovering mouse or simulate Mouse and Keyword operations can be done
by using Action Class. A necessary thing to learn in Selenium journey.
• What is Action Class & What can we do with Action Class
• Mouse Hover & Mouse Movement with Action
• Finding Coordinates of a Web Object
• Drag and Drop Action
14) Auto IT : AutoIT is third party tool which is used for Desktop automation. In
Selenium world sometimes there Is a need of automating windows component in
browser automation script. So automation done through AutoIT can be called with
Selenium Scripts.
• What is AutoIT and its usage
• Downloading of AutoIT
• Usage of AutoIT in Selenium
• Upload, download files using AutoIt
• Handling http user authentication with AutoIT
15) Browser Profile : Different types of browser profiles and user authentication
models with examples will be discussed in this class. You will need these to test
secured websites and user authenticated websites.
• What is Browser Profile
• How to set up FireFox profile
• How to set up IE profile
• HTTP user authentication in Mozilla
• HTTP user authentication in IE
• Certificate handle in Mozilla
• Certificate handle in IE
Selenium WebDriver Professional is for those who want to get under the skin of test
automation with Selenium. We get into lots of details during these sessions and hence
the course duration at times take little more time than expected. Professional course
is a 8 weeks program which include 4 weeks Basics as well. It requires 16 – 18 classes
and each class is a 2 hour class. In addition to the basic course we will cover Data
driven, Keyword driven and Hybrid framework creation, TestNG, Log4j and many
other wonderful topics which helps you in designing your own Frameworks. You will
find the complete course content below.
WEEK 5
16) Java Tutorial
In this class we dive deep into understanding Instances, classes and Inheritance which
are prerequisite to Automation Framework. We will also take a look at how program
control flows and how we can alter it to suit our needs.
• Local & Global Variables
• Static Variable & Function
• Modifiers – Access Modifiers
• Modifiers – Non Access Modifiers
• Overloading and Overriding Functions
• Inheritance
• Polymorphism
• Exception and Error
• Final and Finally Keyword
• Throw and Throws
WEEK 6
18) TestNG Framework
TestNG is a wonderful off the shelf framework that can be used directly to create your
test framework. We will learn about this framework here.
• What is TestNG
• Benefits and Features of TestNG
• How to download TestNG
• Annotations in TestNg
• How to run Test Suite in TestNG
• Groups in TestNG
• Depend On in TestNG
• Test Case sequencing in TestNG
• TestNG Reporters
• TestNG Assets
• TestNG Parameters
• Multi Browser testing in TestNG
• Parallel testing in TestNG
WEEK 7 & 8
19) Automation Framework
This class will cover the concepts of Frameworks. After this the participant would got
to know that which type of Framework works best for their Application and the pros
& cons of the selected framework. Knowledge of frameworks is key skill to learn.
• What is Automation Framework
• Features of Automation Framework
• Benefits of using Automation Framework
• Different types of Automation Framework
• What is Data Driven Framework
• What is Modular Driven Framework
• What is Keyword Driven Framework
• What is Hybrid Framework
20) LIVE PROJECT – Selenium Hybrid Framework
In this class we will explore some major frameworks by looking at the code and
understanding the key component of the framework. A demo website will be taken
and framework will be built on top of that which will simulate actual project scenario.
• Introduction and Component of Frameworks
• Designing Test Data Provider (Excel)
• Designing Run Data Provider (Text/Property file)
• Setting up ANT/Maven Build Tool
• Factory Pattern Design
• Browser Factory Design
• Data Provider Factory Design
• Creating Page Objects & Object repository
• Writing Test Script and Fetching Test Data
• Designing Test Runner for Framework
• Enhancing Browser Factory
• Asserts, Test Fails & Error logging
• Reporters, TestNG Listeners and Log file Generation
• Running test with different Test Data
• Generating the HTML reports
• Emailing test reports
• Creating a BAT file for project execution