Strongly-typed .NET automation framework demonstrating the C# async/await patterns expected in enterprise Microsoft-stack organisations — built against the same QA Lab target as all Cross-Stack Series frameworks.
Microsoft.Playwright 1.44 · C# 12 (.NET 8) · NUnit 3.14 · Playwright HTML Reporter · GitHub Actions
Playwright HTML report published to GitHub Pages after every CI run on main. Professional layout, test-by-test trace, pass/fail breakdown — zero extra tooling required.
Playwright HTML Reporter · GitHub Pages View Report →GitHub Actions workflow: smoke tests on every push, full regression on main, scheduled Monday 07:00 UTC before standup. TRX and HTML artifacts retained 30 days.
GitHub Actions · ubuntu-latest View Runs →Full C# project: Page Objects, PlaywrightFixture base class, C# records for test data, NUnit [TestCase] parametrization, .runsettings parallel config, GitHub Actions workflow.
Public · MIT License View Repository →Playwright + C# is the expected stack in any Microsoft-ecosystem organisation: .NET shops, Azure DevOps pipelines, and teams already invested in the C# toolchain. Hiring managers in these environments look for native async/await fluency, NUnit familiarity, and the ability to structure a test project as a proper .NET solution.
This is Stack 5 of the Cross-Stack Series — the same QA Lab target tested with Playwright but in C# rather than TypeScript. Both stacks use the identical Playwright engine, making this a clean apples-to-apples comparison of language ecosystem fit, not automation capability.
Stack choice is an engineering decision, not brand preference. This framework demonstrates what idiomatic C# automation looks like — strongly typed, compiled, zero sync-over-async anti-patterns.
Every decision reflects real .NET enterprise requirements:
await page.ClickAsync() is idiomatic, not bolted on13 QA Lab UI sections covered across 13 test files. Same automation surface targeted in every Cross-Stack Series framework.
.NET stack — every tool justified by real-world enterprise hiring requirements. Zero exotic NuGet packages.
Same target, different stacks. Five frameworks built against the same QA Lab UI to produce evidence-based comparisons — not vendor benchmarks.