
Discover the basics of test automation framework design, including reusable, maintainable, and scalable components for Playwright in C# .NET.
Explore common test automation framework types, including data driven, keyword driven, hybrid, and modular frameworks, along with data sources like json, xml, excel, and databases.
Understand the foundations of asynchronous programming in C# .NET and the role of async/await in Playwright. See a demo contrasting blocking synchronous code with non-blocking async patterns.
Refactor test setup by moving browser initialization into an async initialize playwright method inside a driver class, returning an IPage, and use await for page actions like clicking links.
Explore how channels in browser type launch options control chromium-based runners to open firefox or edge, highlighting that channels—not the edge browser itself—require the chromium driver.
Design a browser interface in Playwright using interfaces, extract the driver initializer interface, and implement chromium, firefox, and edge drivers for clean, contract-driven code.
Separate framework and test code by creating distinct projects for tests and framework, migrating Playwright setup, and wiring dependencies for context injection and data-driven testing in .NET.
Switch to Rider IDE for cross-platform dotnet development on macOS, keeping the same Playwright-based framework and NuGet dependencies, with identical test workflows and Visual Studio parity.
Build maintainable tests in Playwright with a page object model in C# .NET, using a test generator for record and playback.
Replace inline data with a concrete product type in C# .NET Playwright tests by introducing a product model (id, name, description, price) and using it as the test data.
Extract an interface from the playwright driver and register it with dependency injection in startup, exposing page, browser, and browser context while removing boilerplate and using scoped and singleton services.
Demonstrates refactoring the page object model with dependency injection by extracting interfaces for product list and product page, registering them in startup, and simplifying with a Playwright driver page property.
Demonstrates separation of concern by moving playwright driver and test settings into a dedicated fixture, using dependency injection and a test page interface to drive navigation and assertions.
Automation framework development with Playwright in C#.NET is an advanced course designed to address End-to-End test framework development with clean coding and SOLID patterns in place.
The curriculum of this course is designed not just by randomly choosing some of the topics that I know, the course has evolved over a period (20+ years) by giving training to more than 360,000+ professionals (both online and corporate training) and working in automation testing field 20+ years now
Hence the course is much-refined version, meaning the course won't deviate from the topics it is meant to be.
The course includes all the source codes which we will discuss in the course, hence one must have all the source codes required at the end of every section.
Finally, the course is for those, who are serious about automation testing framework development from the complete ground up and understand all the nuts and bots of building them for extensible usage at work
In this course, you will learn to automate ASP NET Web API and WebUI projects using tools such as
Playwright (latest version)
.NET 8
C# 12
XUnit
AutoFixture
Fluent Assertion
Specflow
Extent Reports
We will also be using the following patterns and concepts in this course
Dependency Injection
Factory Pattern
Page Object Model Pattern
Lazy Initialization
Separation of Concerns
Single Responsibility Principle
Dispose Pattern
Asynchronous programming
At the end of this course, you will have
Complete understanding of C# with .NET 8
Complete understanding of Playwright with latest and greatest changes
Designing a complete framework from the ground up
All the idea to design a more extendable framework
CI/CD with Playwright
Reporting for Playwright with Extent Reports
You can directly apply all the concepts from the course at your work with very less code change in the framework and start using it as your test automation framework to test and improve quality of your applications.