Selenium Testing


SELENIUM COURSE CONTENT

Batch Schedule:

  • Course name: Core java+ Selenium Web Driver + FRAMEWORK
  • Course start date:
  • Time:
  • Course Duration:

 Java Programming Basics

  • Why Java for Selenium
  • Java Architecture
  • Installing Java
  • Installing Eclipse
  • Concept of class file
  • Datatypes in Java
  • String class and functions
  • Practical Examples on Strings handling
  • Conditional Statements
  • If…else…
  • Switch case
  • Practical Examples with conditions
  • Loops
  • While Loop
  • For Loop
  • Practical Examples with loops
  • Arrays
  • Single Dimensional Arrays
  • Two Dimensional arrays
  • Practical usage of arrays in Selenium
  • Operators
  • What are Functions?
  • Function Input Parameters
  • Function Return Types

Object Oriented Programming

  • 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
  • Overloading and Overriding Functions
  • Access Modifiers – Public/Private/Default/Protected
  • Constructors
  • Interface
  • Usage of Objects in Selenium
  • Inheritance
  • Usage of Inheritance in Selenium
  • Creating Packages
  • Accessing Classes across Packages

Exception Handling

  • Exception handing 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 Framework

  • Sets
  • Lists
  • Queues
  • Maps

Retrieving Elements from Collections

  • For each loop
  • Iterator Interface
  • List Iterator Interface

Eclipse

  • Installing Eclipse
  • Creating Simple Java Project in eclipse
  • Importing and Exporting
  • Debugging using Eclipse
  • Exploring Eclipse – Basic
  • Exploring Eclipse – Advanced

Selenium

Introduction to Selenium

  • Test Automation for Web Applications
  • To Automate or Not to Automate?
  • Introducing Selenium
  • Brief History of The Selenium Project
  • Selenium’s Tool Suite
  • Supported Browsers and Platforms

Selenium IDE

  • Installing Selenium IDE
  • Creating your First Selenium IDE script
  • How to use Locators in Selenium IDE
  • How to enhance a script using Selenium IDE
  • Creating and Running Tests
  • Creating and Running Test Suite

Introduction to Selenium WebDriver

  •  Selenium Webdriver Architecture
    • client/language bindings
    • Webdriver API
    • Webdriver SPI
    • JSONWireProtocal
    • Drivers
  •  Download and configure the Webdriver jars in eclipse
  •  Prerequisites for selenium WebDriver
  •  Different types of browser drivers
  •  Focus on FF Driver,IE Driver, ChromeDriver,HtmlUnitDriver
  •  Working on RemoteWebDriver
  •  Introduction to page level commands/methods in WebDriver
  •  Introduction to navigation commands in WebDriver.
  •  Difference between quit and close methods
  •  Different techniques for closing the browsers.

Introduction  to Web Technologies in Selenium Webdriver                     

  •  Introduction to html,
  •  dhtml
  •  xml,xpath
  •  Javascript,html5,cookies,regular expressions.
  •  Ajax,json

INTRODUCTION TO OBJECT IDENTIFICATION IN WEBDRIVER

  •  what is page source
  •  Hooking pagesource using pageinspectors.
  •  Introduction to HTML DOM
  •  Need of page source in selenium Webdriver
  •  what is static and dynamic objects
  •  Introduction to locators in selenium WebDriver
  •  Type of locators.
  •  Introduction to find element and find elements method in WebDriver.
  •  Introduction WebDriver Interface
  •  Introduction Web Element Interface
  •  How and when can  we select the locators.
  •  Introduction to xpath,cssseelctor and jquery selectors
  •  Focus on xpath language and css
  •  Handling dynamic objects using xpath,cssselectors and jqueryselectors.
  •  Building customized locators.
  •  Introduction to objectmodel in WebDriver
  •  Identifying Web Elements using id, name, class

Handling Ajax Components

  • What is XPath
  • When to Use XPath
  • Absolute XPath/Relative XPath
  • Specifying conditions with XPath
  • CSS Selectors
  • Customizing CSS Selector

Synchronization

  • ImplicitWait
  • WebDriverWait
  • FluentWait
  • PageLoadTimeout

TestNG

What is TestNG?

  • Checking reports created by TestNG
  • Generating HTML Reports
  • Annotations used in TestNG
  • Validating Tests with Assertions
  • Creating multiple Tests
  • Prioritizing Tests
  • Parameterizing Tests with dataProvider
  • TestNG dataProvider with Excel
  • Creating and Running Test Suites with TestNG.xml
  • Parallel Test Execution with TestNG
  • Cross Browser Testing using TestNG
  •  Batch Running of tests in TestNg
  •  Skip Test in TestNG
  •  Set Test Dependencies in TestNG
  •  Assertion in TestNG
  •  error collectors
  •  improved Assertions using HAMCREST JAVA LIBRARY
  •  Test Groups in TestNG
  •  Setting priority of execution for test cases
  •  Test Parameterization in TestNG
  •  Putting Dataproviders for multiple tests in a single file
  •  Parameterizing/Sharing single dataprovider for multiple test cases
  •  Parallel Test Execution Using TestNG
  • Test Listeners in TestNG
  •     Listenrs for logging in case of FAILED, SKIPPED or PASSED test cases
  •     TestListener Adaptor
  •     Reporting multiple failures in single test case
  •     Logging and Reports in TestNg
  •     Integrate ReportNG with TestNG
  •     Pre-Serve Test Execution Order in TestNG
  •     TestNG Tests Run Count after Retry.
  •     Retry executing only Failed Tests using TestNG
  •     Mocking in TestNg.

 

Automation Test Frameworks

  • Modular Driven Framework
  • Keyword Driven Framework
  • Data Driven Framework
  • Hybrid Framework

Page Object Model (POM) & Page Factory in Selenium

  • What is POM
  • Why POM?
  • Advantages of POM
  • Creating POM Tests
  • What is Page Factory?
  • Creating Tests with Page Factory

MAVEN & JENKINS

MAVEN

  • What is Maven and Why Maven?
  • Installing/Configuring Maven
  • Creating Maven Project
  • Importing Maven Project into Eclipse
  • What is POM.xml?
  • Adding Dependencies to POM.xml

JENKINS

  • Installing/Configuring Jenkins
  • Scheduling Test Execution in Jenkins
  • Auto mail configuration in Jenkins
  • What is continues integration?
  • Continues integration with JENKINS

LOG4J

  • Introduction about Logging
  • Logging problems without Log4J
  • How to solve Logging problem with Log4J
  • What is Layout?
  • Different types of Layouts in Log4J
  • What is Appender?
  • Different types of Appenders

INTRODUCTION TO AUTOMATION TEST FRAMEWORKS

  •   what is framework
  •   Types of frameworks
  •   Design and implmentation of datadriven frameworks
  •   Design and implementation hybrid-driven frameworks(datadriven+keyword driven)
  •   Design and implementation of framework using page object design patterns,model
  •    page factory.

INTRODUCTION TO GIT/GITHUB/CONTINUOUS INTEGRATION -JENKINS

  • Jenkins Integration
  •   What is continuous integration
  •   How Jenkins helps in continuous integration
  •   Downloading and Installing Jenkins
  •   Executing simple batch commands
  •   Build project at will and build at intervals/ Scheduling builds
  •   Executing Selenium Project builds with ANT
  •   Executing Selenium Project builds on remote Server/Github with ANT?
  •   Build Triggers
  •   Mailing if build fails
  •   Configuring/Scheduling Maven Project in Jenkins
  •   Configuring/Scheduling remote Git maven project in Jenkins
Whatsapp Chat