Selenium C# Online Training and Coaching


Selenium C# Online Training and Coaching Syllabus

Day 1: C# Revision

  • Classes and Objects
  • Static Class, Abtract Class, Interfaces
  • Arrays
  • Generic Collections
  • Selenium Overview
  • Selenium Pre-requisites
  • Selenium Syllabus

Day 2: Understanding Unit Test Projects and Benefits of Automation Testing

  • Assertions
  • Different Types of Assertions
  • Unit Testing Attributes
  • Unit TestContext class
  • TestCategory Attribute
  • Benefits of Automation Testing

Day 3: Introduction to Selenium Web Driver and Setting up Selenium Web Driver

  • What is Selenium Web Driver
  • Benefits
  • Issues of Selenium Web Driver
  • Perfect Framework
  • Latest Selenium Version
  • Download and Install Web Driver
  • Download Chrome Web Driver
  • Fetching ChromeDiver path dynamically using Reflection
  • Important Namespaces
  • Understanding IWebDriver Interface

Day 4: Locating Web Elements using WebDriver #1

  • Introduction To Element Identification
  • Use Chrome for Element Location
  • Absolute XPATH and CSS
  • HTML Basics
  • HTML in Browser
  • WebDriver Location Strategies
  • Highlighting all Web Elements using Selenium
  • FindElement and FindElements methods
  • Best Locators to use
  • Evaluate elemnts at Runtime

Day 5: Locating Web Elements using WebDriver #2

  • Introduction to XPath
  • Forward slash and Double Forward slash in XPath
  • Asterisk and @ in XPath
  • XPath Contains function
  • XPath parent and compound class names
  • How to use multiple attributes in XPath

Day 6: Navigation, Manipulation, and Interrogation

  • Navigation with Selenium WebDriver
  • Element Navigation with WebDriver
  • How to fill a Form
  • CurrentWindowHandle, WindowHandles, PageSource, Title
  • WebDriver URL
  • Interrogating IWebElement
  • IWebElement properties

Day 7: Implicit and Explicit Waits

  • What is an Implicit wait in Selenium
  • How to make Implicit Wait work
  • What are Explicit Waits
  • Types of Explicit Waits
  • 2 Types of Explicit Waits
  • WebDriverWait
  • ExpectedConditions
  • Customizing WebDriverWait
  • Future of ExpectedConditions

Day 8: Mouse, Keyword, Drag and Drap Actions, Developer Tools, Resize and Draw

  • User Interaction in Selenium WebDriver
  • Different Kind of User Interaction
  • Dont use FireFox
  • How to create an Actions class in WebDriver
  • Writing the Drag and Drop test
  • Executing Drag and Drop test
  • Resize action with WebDriver
  • How to open Developer Tools with WebDriver
  • How to draw on a Canvas with Selenium

Day 9: Page Objects

  • Introduction To Keyword Driven Testing
  • What can Change about Keyword Driven Framework
  • Advantages and Disadvantages of Keyword Driven Test
  • Introduction to Page Object Pattern
  • Pros and Cons of Page Object Pattern
  • Functional Test using Page Object Model
  • Understanding BaseTest and CoursesPage
  • Page Objects look similar
  • What is DRY Principle
  • Page Objects is Wet
  • What Page Objects Wet
  • How to add BasePage class to our Page Objects

Day 10: Acceptance Test Driven Automation

  • Why did you Struggle
  • Examples of Bad Automation Tests
  • Introduction to TDD
  • Check Execution Environment
  • Red and Green Phase
  • Opening Complicated Page
  • Finish Green Phase
  • Refactor
  • Red
  • Locating Amazon Search Bar
  • Green
  • More Refactor

Day 11: Getting Started with Framework Development

  • Getting Started with Selenium Framework
  • Writing Test Skeleton
  • Fixing Compiler Errors in Tests
  • How to Setup ChromeDriver
  • Getting ChromeDriver to Run
  • Making GoTo and IsVisible work
  • FillOutForm and Submit methods
  • Making 1st Test Pass and Refactor
  • Creating a BasePage class
  • Making Functional Test Fail

Day 12: Sprint2

  • Introduction to Sprint2
  • Adding LastName Field
  • Fixing a possible Problem
  • Refactor Phase
  • Adding a TestCleanUp
  • How to Remove more Duplication
  • Red Phase
  • Importance of Refactoring

Day 13: Sprint3+4

  • Adding a Gender
  • Update FillOutFormAndSubmit
  • Refactoring
  • Red and Green Phase
  • Refactoring all 3 Tests
  • Refactoring out Assertions
  • Sprint4 Requirements
  • FillOutEmergencyContactForm method
  • SetGenderTypes Method
  • SetGenderForEmergencyContact Refactor
  • Red and Green phase of Sprint4

Day 14: Test Organization and BaseTest Class

  • Organize your Test Cases and Classes
  • Test Organization in Code
  • Skeleton of Test Case
  • Implementing the Test
  • WebDriverFactory
  • Making Test Pass
  • Refactoring
  • Making Test Fail
  • Explaining WebDriverFactory
  • A new Problem
  • Creating a BaseTest class

Day 15: Keeping Classes Small and Solution Organized, Logging in Test Automation

  • Problem with Large Page Objects
  • How to Keep Page Objects Small
  • How to Oragnize the Solution
  • How to Encapsulate Page Locators
  • Why is Logging Important
  • Introduction To NLog
  • How to Install NLog
  • Starting to Log
  • Why Info Level is Important
  • Understanding NLog
  • Layout in NLog
  • FileName and KeepFileOpen in NLog
  • Creating First Log Records
  • NLog Bug Logger

Day 16: How to Create HTML Reports for Automation

  • Why do Reporting in Automation
  • Overview of Extent Reports
  • How to use Extent Reports
  • Solution Layout and new Classes
  • The Reporter Class
  • The BaseTest class
  • The ScreenShotTaker class
  • Viewing Test Result
  • How to use Reporter Class