Skip to content

TestLeafInc/TestLeafSeleniumTraining

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Selenium WebDriver Course

This is public repository for Selenium Learners at TestLeaf.

Week1 - Core Java Basics

  • How Java works?
  • Introduction to Class, Members of Class - Methods, Variables
  • Get started with Primitive Data Types
  • Declaration and assignment variables
  • Operators (Arithmetic and Comparison)
  • Anatomy of if, if-else statements
  • Anatomy of loops - for, foreach, while, do while
  • Introduction to String class and its methods
  • Get started with Arrays
  • Solving basic String and Array Problems

Week 2 - Get Started with Selenium WebDriver

  • How Selenium Works Internally?
  • Basic code to launch browser, load URL, Set timeouts and Maximize browser
  • 8 old locators and its strategy of when to use and when not to use
  • Browser Methods like get, findElement(s), close, manage, getTitle etc
  • WebElement Methods like clear, sendKeys, click, getText, getAttibute etc
  • Exceptions - NoSuchElement, StaleElementReference etc
  • How to handle dropdowns, checkbox, radiobutton, web table / calendar etc?
  • XPath build syntax and patters - Absolute, Relative (Attribute, Text) with Exact and Partial matches
  • XPath Patterns - Axes, Collection based indices, Functions
  • Implicit and Explicit Waits
  • Webdriver Snapshot methods for visible area and webelement - Base64 and File
  • Assignments Review

Week 3 - Java OOPS, Collection and WebDriverWait

  • Java OOPS pillars
  • Abstraction - Java Concept, Real time example and Selenium Implementation
  • Inheritance, Polymorphism, Encapsulation
  • WebDriverWait, Expectedconditions, TimeOutExceptions
  • RedBus automation example with Disable Notification, Click Intercepted Exception
  • Java Collection - List, Set, Map
  • Problem Solving - Duplicate values in array, Unique characters in String, Count of characters and Two Sum
  • Assignment Review

Week 4 - Target Locators and Actions

  • SwitchTo - RemoteTargetLocator
  • Alert - accept, dismiss, getText, sendKeys, Exceptions
  • Frame - method overloading (int,String, WebElement), Exception
  • DefaultContent, ParentFrame - Switch back from frame
  • Window - getWindowHandles, getWindowHandle, Exception
  • Switch to Window Options - Set to List, Iterator
  • close vs quit
  • ActiveElement & New Window feature in Selenium 4.0
  • Actions class methods - dragAndDrop, dragAndDropBy, moveToElement, pause, perform
  • Other Actions class - clickAndHold, keyDown, release
  • Exception Handling - try/catch, throw, throws, finally
  • End to End testcase for retail website

Week 5 - TestNg (Test Runner Framework)

  • TestNg Basics
  • Annotations and its hierarchy
  • TestNg XML design
  • @Test Annotation and its attributes
  • Dependency Injection
  • Test Report using TestNg
  • Parameterization - @Parameter and @DataProvider
  • Read Excel using Apache POI Java API
  • Integrate excel data automation with TestNg (Apache POI + Data Provider)
  • Build OOPS concepts into TestNg implementation
  • Convert existing plain testcases to TestNg implementation
  • Run sequential, parallel - with logs and reports
  • Listeners - ISuite, ITest and Retry Implementations

Week 6 - Cucumber Basics to Advanced (BDD Framework)

  • Cucumber and BDD, TDD Basics
  • Create Feature File with simple scenario
  • Cucumber - Gherkin Keywords
  • Integration with Step Definitions
  • Scenario Outline with Examples and with Background
  • CucumberOptions - Glue, MonoChrome, Report, Hooks
  • Create Runner File with TestNG
  • Cucumber Hooks and Java OOPS integration
  • Convert existing TestNg testcases to BDD implemntation
  • Run Feature files from TestNg XML

Week 7 - Pattern Object Model Design Pattern and Framework

  • Page Object Model design rules
  • Pattern Object model - Page Inheritance
  • Build Page Classes (without Page Factory)
  • Build DataProvider utility classes
  • Build the testcases as runner classes
  • Design the TestNg XML with verbose
  • Debug and execute the testcases for different data

Week 8 - Hybrid framework with Thread-Local

  • ThreadLocal Implementation for Driver, Reports