End-to-End Testing with Selenium

4 Days

javajavascriptpythonc#
testingAutomation

Intermediate

testerdeveloper

This workshop coaches participants on how to automate end-to-end web testing using Selenium, which is the most widely used browser automation tool-set. With least presumption on participant’s knowledge, Workshop commences with key concepts succinctly and then moves to Selenium usage as a tool for test automation for web applications. The course covers testing of static and dynamic website with html, http, ajax and more. Selenium Webdriver is covered in very complete detail including Selenium IDE, Third party tools, and introduction to distributed testing. Highlight of this workshop is extensive hands-on and demos.

Audience

Participants must be developers or software savvy testers who aspire to use Selenium to efficiently conduct their business.

Prerequisites

Participant must be able to code in core Java/C#/Python/Javascript with corresponding standard library.

Topics
Introduction
  • Web and HTTP
  • Browsers and Servers
  • HTML, CSS and JavaScript
  • Browser Developer Tools
  • Cookies, Cache, Headers
  • DOM Tree and Web flow
  • Ajax Vs Non-ajax
  • Brush up on Python, Javascript, Java or C#
  • Files and Databases
  • Key Python, Javascript, Java or C# Classes and Methods
  • Debugging
  • Intro to Selenium Tool Set
  • Third party extensions
  • Manual Testing
  • Coded Tests and Benefits
  • Intro to Unit Testing Framework
  • Usage of Unit Testing Framework
  • AAAC structure
  • Custom Assertions
Selenium
  • Introducing WebDriver
  • Intro to Selenium IDE
  • WebDriver and Selenium-Server
  • WebDriver API Introduction
  • WebDriver API by Examples
  • Important Exceptions
  • Verifying Page Elements
  • Locating Elements – css, id, name, link, class, xpath, tags
  • Getting state of DOM
  • Manipulating Elements
  • Click, double click, drag, drop, keypress
  • Input elements
  • Actions
  • Custom Selenium Assertions
  • RegEx
  • Matching Text Patterns
  • Wait Commands and Ajax
  • Implicit, Explicit, Fluent Wait
  • Flow Control
  • Alerts
Webdriver
  • Forms and Tables
  • File upload and download
  • Handing Alerts
  • Windows, Frames, Dialogs
  • Browser Window
  • Object Repository
  • Page Objects
  • Parameterization
  • Data Driven Tests
    • Hard-coded
    • Excel
    • Json
    • Csv
    • Database
  • Keyword (Table) Driven Tests
  • Guidelines for Skeleton framework
  • Test Cases Guidelines
  • Debugging
  • Different Browsers
More
  • Authentication
  • Logging
  • Handling Cookies
  • Injecting javascript
  • Taking screenshots
  • Taking partial screenshots
  • Recording tests
  • Browser Specific Options
    • Headless
    • Profile
    • Downloads
    • Extensions
  • Performance Testing
  • Selenium Server
  • Grid configuration
  • Hubs and Nodes
  • Using command line
  • Limitations of Webdriver
  • Intro to Cucumber and Gherkin
Exclusions

SDLC, Advanced protocol details, Advanced distributed testing
Anything not mentioned in Topics1

Software Requirements

IDE of choice to do hands-on
Modern browser like Chrome

Internet Requirements

Good internet connection is required.

Hardware Requirements

Laptop capable to run MS Office

Classroom Requirements

Projector with HDMI, White Board, Markers with Eraser

Online Requirements

Appropriate meeting software e.g. Zoom, MS Teams
Please make sure that camera, speaker and mic are working

Footnotes

  1. If you have any query, please drop us a line.