• Basics of Javascript for Automation
• Playwright Automation Testing
• Playwright / BDD cucumber Fw
• Git and GitHub
• CICD – GitHub Actions
JavaScript Basics for Automation
- Introduction to JavaScript
- Variables and Datatypes
- Conditional Statements
- Loops
- Functions
- Arrow functions
- Objects
- Working with Objects
- Arrays
- Working with Arrays
- Strings
- Working with Strings
- Numbers
- Working with numbers
- Class
- Constructor
- Static
- OOPs
- Synchronous vs Asynchronous
- call backs
- Promises
- Async and Await
Playwright Automation Testing tool
- Course Summary:
- Introduction to Playwright Automation tool
- Setting up Playwright, Writing the First Test
- Running Playwright Tests in command line, Playwright Hooks, grouping, tags and annotations
- Page Object Model, Viewport, Fixtures
- Locators – Xpath and CSS and playwright In-built locators.
- Working with Checkboxes, Radio buttons and other web elements.
- Working with Dropdowns, Alerts, File upload, File download
- Video reporting, HTML reports, Allure reports
- API testing Integration, BDD Cucumber integration
- Learning Outcomes:
After the Course, participants will exhibit competencies / Skills of:
- Understand Playwright from Scratch and build fast and reliable Automation tests for any Web Applications using Playwright
- Practical knowledge in designing Playwright Automation frameworks from scratch.
- Real-time hands-on Exercises to practice Playwright
- Parallelly with Videos for building confidence in the tool
- Complete understanding of Playwright Components for generating test execution Videos, Screenshots & Reporting
- Participants will learn advanced architectural concepts like Page Object Modelling
- Learn JavaScript fundamentals required for Playwright Automation testing.
- Comprehensive knowledge of Playwright Methods and their usage with examples.
- Understand how to Intercept Network/API requests & responses with Playwright.
- Get Familiar with the Playwright Inspector tool, Trace Viewer & Code Gen (Record Playback) tools
- Develop Playwright cucumber BDD Framework from Scratch with best practices.
- Develop End-to-end Mocha Framework with Playwright utilizing all the features available in the tool.
- Playwright Course Content:
- What are the benefits of Automation?
- Why we do automation
- When should you automate your software testing
- When should automation not be preferred
- Selenium Vs Playwright
- Cypress vs Playwright
- Playwright Introduction and Its Features
- What is a Playwright?
- Why Learn Playwright?
- How does Playwright Work?
- What are the Key Differences between Playwright and other Automation Tools?
- Playwright Demo
- Understand Playwright Architecture and its benefits
- Environment Setup
- Chrome & Firefox Browser Installation
- Prerequisites – [NodeJS Setup]
- NodeJs Setup
- Gitbash Setup
- VS Code Installation & Configuration
- Playwright Setup
- Playwright Installation & Setup
- NPM Installation & Update
- Playwright Overview
- Playwright Opening for the First Time!
- Playwright Test Runner
- Playwright Project Structure
- Playwright API
- Playwright API – Overview
- Basic Playwright Commands
∙ Command Activation & Inspecting Specific Playwright Commands
∙ Goto & Click Command
∙ Click Options
∙ Type and Fill Command
- Creating Our First Test
∙ Creating Our First Playwright Test – (Positive Test Case)
∙ Creating Our First Playwright Test – (Negative Test Case)
∙ Group test cases in playwright
∙ Get and assert Page title
∙ Get and assert Page URL
- Playwright hooks, tags and Test Annotations.
- Web first Assertions
- Browser context and Page fixtures
- Playwright Configurations
- Running Playwright tests in multiple browsers – chrome, Firefox and Webkit
- Playwright Inspectors, Trace Viewers & Codegen tools with Demo examples
- Playwright TestRunner
- Exploring the Playwright project Framework structure
- Parallel & Cross Browser Testing
- Web Elements & Selectors
∙ Why do we need Selectors?
∙ Document Object Model (DOM) & Elements
∙ Practical In-Depth Look into Selectors
∙ Selector Generator Tools
∙ CSS Selectors
∙ Xpath Selectors
. Playwright In-built Locators
- Assertions
∙ Why do we need Assertions?
∙ Web first Assertions & Playwright Examples
∙ Adding Assertions to our Existing Tests
- Triggering Tests via Command Line
∙ Headless Browsers
∙ Non Headless Browsers
∙ Trigger Individual Tests
∙ Trigger Group of Tests
∙ Trigger tests using custom config file
- Logging
∙ Playwright log
- Promises and the Then Command
∙ Promises Real World Example
∙ Playwright and Promises
∙ then Command
- Iterating through Elements
∙ Iterating through Elements – Documentation & Preparation
∙ Practical Example of Iterating through Elements
- Browser Navigation
∙ Back, Forward, Reload
- Handling – Alerts
∙ Handing Alerts – Documentation
∙ Handling Alerts – Example
- Handling – Checkboxes
∙ Handling Checkboxes
- Handling – Radio Buttons
∙ Handling Radio Buttons
∙ Validating States of Radio Buttons (Checked & Unchecked)
- Handling – Drop-down Lists
∙ Handling Drop-down Lists
- Autocomplete (Suggested) Lists
∙ Handling Autocomplete Lists
- Mouse Actions
∙ Scroll into View
∙ Drag & Drop
∙ Double Click
∙ Right-click Assertions
- Handling Data from Tables
∙ Handling Data – Example
- File Upload
∙ Introduction & Preparation
∙ Uploading File(s)
∙ Uploading no File(s)
- Handling Elements
∙ Tabs,
∙ I-frames,
∙ Shadow Elements,
∙ Tables,
∙ Links
- Read file and Write file
- Fixtures
- Overriding Default Settings
∙ Playwright.config
∙ Ignore Files
- Environment & Global Variables
∙ Environment Variables
∙ Setting up a Base URL
- Page Object Modelling
∙ Page Object Modelling
- Configuring & Handling Timeouts
∙ URL Timeouts
∙ Explicit Timeouts
∙ Assertion Timeouts
∙ Hard coded wait
∙ Wait for the condition on the element
∙ Wait for the event on the page
Synchronization (Waits)
∙ Auto wait, Local Timeouts, Test Spec Timeout,
∙ Global Timeout Config, Static Waits
- Screenshots & Recordings
∙ Capturing Screenshots
∙ Recording Videos
- Viewport – Altering Screen Sizes
∙ Altering Viewports – Configuring Size and Orientation
- Save session storage using Playwright and inject into new Browser context
- Test Retries , Serial & Parallel execution & Tagging Tests in Playwright
- Reporting
∙ Inbuilt Reporters
∙ Allure Reports
- ∙ GitHub – Account Creation & Login
∙ Visual Studio Code & GitHub – Setup
∙ Committing and Pushing our Code (Framework) to GitHub
∙ Pushing & Pulling New Changes
- API Test Automation
∙ Playwright – API Testing integration
∙ Playwright – API Testing – GET
∙ Playwright – API Testing – POST
∙ Playwright – API Testing – PUT
∙ Playwright – API Testing – Delete
- Intercepting with Playwright
∙ Playwright – Spying
∙ Playwright – Stubbing
∙ Playwright – Mocking
- Playwright – Cucumber
∙ Playwright – Cucumber Integration
- Convert excel to Json
∙ Data driven testing using excel file
- Playwright Changelog
- GitHub Actions Integration
- Playwright Limitations
∙ Playwright Limitations
- Debugging
∙ Browser Settings, VS Code Node Debugger,
∙ Playwright Test Debugger with Inspector,
∙ Trace Mode
∙ Debug Console
∙ Playwright Trace Viewer
∙ Playwright Inspector
- Recording Script
- Session Storage
- Course Resources:
- https://playwright.dev/
- https://cucumber.io/