Skip to content

This is public git repo for the learners for Selenium July 2022

Notifications You must be signed in to change notification settings

Aathithyan-K/SeleniumJuly2022

 
 

Repository files navigation

Selenium WebDriver Course

This is public repository for Selenium July 2022 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
  • Get started with Arrays
  • Introduction to String class and its methods
  • 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 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
  • Implicit and Thread.sleep
  • Webdriver Snapshot methods for visible area and webelement - Base64 and File
  • Assignments Review

Week 3 - Java OOPs, Collection

  • Java OOPS pillars
  • Abstraction - Java Concept, Real time example and Selenium Implementation
  • Inheritance, Polymorphism, Encapsulation
  • 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 - TargetLocator
  • Alert - accept, dismiss, getText, sendKeys, Exceptions
  • Frame - method overloading (int,String, WebElement), Exception
  • DefaultContent - Switch back from frame
  • Window - getWindowHandles, getWindowHandle, Exception
  • Switch to Window Options - Set to List
  • close vs quit
  • Actions class methods - dragAndDrop, dragAndDropBy, moveToElement, perform
  • WebDriverWait, Expectedconditions, TimeOutExceptions
  • Other Actions class - clickAndHold, keyDown, release
  • Exception Handling - try/catch, throw, throws, finally

Week 5 - Interview Prep Activities

Week 6 - TestNG (Test Runner Framework)

  • TestNG Basics
  • Annotations and its hierarchy
  • TestNg XML design
  • Convert existing plain testcases to TestNg implementation
  • @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
  • Run sequential, parallel - with logs and reports
  • Listeners - ITest and Retry Implementations

Week 7 - 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, Features, Publish, 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
  • Organized the code base as pages

Week 8 - 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
  • ThreadLocal Implementation for Driver, Reports

About

This is public git repo for the learners for Selenium July 2022

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 98.0%
  • Gherkin 2.0%