Best Playwright-dotnet code snippet using Microsoft.Playwright.NUnit.PageTest
Scenario01.cs
Source:Scenario01.cs  
...5using PlaywrightNunitDemo.lib;6namespace PlaywrightNunitDemo7{8    [Parallelizable(ParallelScope.Self)]9    public class Scenario01 : PageTest10    {11        [Test]12        public async Task CanWaitForAnElementToAppear()13        {14            await AppHelpers.VisitURL(Page);15            await Page.WaitForSelectorAsync("#elementappearschild", new PageWaitForSelectorOptions{ State = WaitForSelectorState.Visible, Timeout = 5000 });16        }1718        [Test]19        public async Task AutomaticallyWaitsForElementsThatAppearAfterOnLoad()20        {21            await AppHelpers.VisitURL(Page);22            string text = await Page.TextContentAsync("#loadedchild");23            Assert.AreEqual("Loaded!", text);...CounterTests.cs
Source:CounterTests.cs  
...56namespace Example.PlaywrightTests;78[Parallelizable(ParallelScope.Self)]9public class CounterTests : PageTest10{11    [Test]12    public async Task Clicking_Counter_Updates_Count()13    {14        // Navigate to the counter page15        await Page.GotoAsync($"{TestHelper.ServerBaseUrl}/counter");1617        // Wait until the counter page is really there.18        await Page.WaitForSelectorAsync("h1");1920        // Click on counter21        await Page.ClickAsync("data-test-id=counter-button");2223        // Assert
...Scenario02.cs
Source:Scenario02.cs  
...4using PlaywrightNunitDemo.lib;5namespace PlaywrightNunitDemo6{7    [Parallelizable(ParallelScope.Self)]8    public class Scenario02 : PageTest9    {10        [Test]11        public async Task CanCheckForErrors()12        { 13            string errors = await AppHelpers.VisitURLGetErrors(Page, "/error");14            Assert.AreEqual(": Purple Monkey Dishwasher Error", errors);15        }16        [Test]17        public async Task CanCheckForNoErrors()18        {19            string errors = await AppHelpers.VisitURLGetErrors(Page);20            Assert.AreEqual(string.Empty, errors);21        }22    }
...Scenario03.cs
Source:Scenario03.cs  
...5using PlaywrightNunitDemo.lib;6namespace PlaywrightNunitDemo7{8    [Parallelizable(ParallelScope.Self)]9    public class Scenario03 : PageTest10    {11        [Test]12        public async Task CanHandleAlerts()13        {14            Page.Dialog += (_, dialog) => dialog.AcceptAsync();15            await AppHelpers.VisitURL(Page, "/leave");16            await Page.ClickAsync("#homelink");17            await Page.WaitForSelectorAsync("#elementappearsparent", new PageWaitForSelectorOptions { State = WaitForSelectorState.Visible, Timeout = 5000 });18        }19    }20}
...Scenario04.cs
Source:Scenario04.cs  
...4using PlaywrightNunitDemo.lib;5namespace PlaywrightNunitDemo6{7    [Parallelizable(ParallelScope.Self)]8    public class Scenario04 : PageTest9    {10        [Test]11        public async Task CanUseXPathSelectors()12        {13            await AppHelpers.VisitURL(Page);14            await Page.WaitForSelectorAsync("//span[contains(., \"Scissors\")]");15            await Page.ClickAsync("//span[contains(., \"Scissors\")]");16            await Page.WaitForSelectorAsync("//div[contains(., \"Scissors clicked!\")]");17        }18    }19}
...UnitTest1.cs
Source:UnitTest1.cs  
...4using NUnit.Framework;5namespace PlaywrightTests6{7    //[Parallelizable(ParallelScope.Self)]8    public class Tests /*: PageTest*/9    {10        [Test]11        public async Task Test()12        {13            // 1.14            using var playwright = await Playwright.CreateAsync();15            await using var browser = await playwright.Chromium.LaunchAsync();16            // 2. Needs PageTest inheritance.17            //await using var browser = await Playwright.Chromium.LaunchAsync();18        }19    }20}...Example.cs
Source:Example.cs  
...3using System.Threading.Tasks;4namespace PlaywrightStarterConsoleApp5{6  //[Parallelizable(ParallelScope.Self)]7  public class Example : PageTest8  {9    10    //public void Setup()11    //{12    //}13    [Test]14    public async Task Test1()15    {16      int result = await Page.EvaluateAsync<int>("() => 7 + 3");17      Assert.AreEqual(10, result);18    }19  }20}...DesktopPage.cs
Source:DesktopPage.cs  
1using NUnit.Framework;2using Microsoft.Playwright.NUnit;3namespace TestParallel.PlaywrightSyncNUnit;4public class DesktopPage : PageTest5{6    public DesktopPage()7        : base() { }8    [SetUp]9    public void Init()10    {11        Page.SetDefaultNavigationTimeout(300 * 1000);12        Page.SetDefaultTimeout(300 * 1000);13    }14}PageTest
Using AI Code Generation
1using Microsoft.Playwright.NUnit;2using NUnit.Framework;3{4    {5        public void Test1()6        {7        }8    }9}10using Microsoft.Playwright.NUnit;11using NUnit.Framework;12{13    {14        public void Test1()15        {16        }17    }18}19using Microsoft.Playwright.NUnit;20using NUnit.Framework;21{22    {23        public void Test1()24        {25        }26    }27}28using Microsoft.Playwright.NUnit;29using NUnit.Framework;30{31    {32        public void Test1()33        {34        }35    }36}37using Microsoft.Playwright.NUnit;38using NUnit.Framework;39{40    {41        public void Test1()42        {43        }44    }45}46using Microsoft.Playwright.NUnit;47using NUnit.Framework;48{49    {50        public void Test1()51        {52        }53    }54}55using Microsoft.Playwright.NUnit;56using NUnit.Framework;57{58    {PageTest
Using AI Code Generation
1using Microsoft.Playwright;2using NUnit.Framework;3{4    {5        private IPage page;6        public async Task SetUp()7        {8            var playwright = await Playwright.CreateAsync();9            var browser = await playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions10            {11            });12            page = await browser.NewPageAsync();13        }14        public async Task Test()15        {16            await page.ScreenshotAsync(path: "screenshot.png");17        }18    }19}20using Microsoft.Playwright;21using NUnit.Framework;22{23    {24        private IPage page;25        public async Task SetUp()26        {27            var playwright = await Playwright.CreateAsync();28            var browser = await playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions29            {30            });31            page = await browser.NewPageAsync();32        }33        public async Task Test()34        {35            await page.ScreenshotAsync(path: "screenshot.png");36        }37    }38}39using Microsoft.Playwright;40using NUnit.Framework;41{42    {43        private IPage page;44        public async Task SetUp()45        {46            var playwright = await Playwright.CreateAsync();47            var browser = await playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions48            {49            });50            page = await browser.NewPageAsync();51        }52        public async Task Test()53        {54            await page.ScreenshotAsync(path: "screenshot.png");55        }56    }57}58using Microsoft.Playwright;59using NUnit.Framework;60{61    {62        private IPage page;63        public async Task SetUp()64        {PageTest
Using AI Code Generation
1using NUnit.Framework;2using Microsoft.Playwright;3{4    {5        public async Task Test1()6        {7            using var playwright = await Playwright.CreateAsync();8            var browser = await playwright.Chromium.LaunchAsync(new LaunchOptions9            {10            });11            var page = await browser.NewPageAsync();12            await page.ClickAsync("text=Sign in");13            await page.ScreenshotAsync(new PageScreenshotOptions14            {15            });16            await browser.CloseAsync();17        }18    }19}PageTest
Using AI Code Generation
1using Microsoft.Playwright;2using NUnit.Framework;3using System;4using System.Threading.Tasks;5{6    {7        private IPage page;8        public async Task SetUp()9        {10            var playwright = await Playwright.CreateAsync();11            var browser = await playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions { Headless = false });12            page = await browser.NewPageAsync();13        }14        public async Task Test1()15        {16            await page.ScreenshotAsync("google.png");17        }18        public async Task TearDown()19        {20            await page.CloseAsync();21        }22    }23}24{25  "Playwright": {26  }27}28{29  "profiles": {30    "PlaywrightTest": {31      "environmentVariables": {32      }33    }34  }35}36using Microsoft.Playwright;37using NUnitLite;38{39    static int Main(string[] args)40    {41        return new AutoRun().Execute(args);42    }43}PageTest
Using AI Code Generation
1using Microsoft.Playwright.NUnit;2using NUnit.Framework;3using Microsoft.Playwright;4using Microsoft.Playwright.NUnit;5using NUnit.Framework;6using Microsoft.Playwright;7{8    {9        public async Task Test1()10        {11        }12    }13}14using Microsoft.Playwright;15using Microsoft.Playwright.NUnit;16using NUnit.Framework;17using System.Threading.Tasks;18{19    {20        public async Task Test1()21        {22        }23    }24}25using Microsoft.Playwright;26using Microsoft.Playwright.NUnit;27using NUnit.Framework;28using System.Threading.Tasks;29{30    {31        public async Task Test1()32        {PageTest
Using AI Code Generation
1using Microsoft.Playwright;2using Microsoft.Playwright.NUnit;3using NUnit.Framework;4{5    {6        public async Task Test()7        {8            await Page.ScreenshotAsync("screenshot.png");9        }10    }11}12{13  "Playwright": {14    "ChromiumExecutablePath": "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe",15  }16}17{18  "profiles": {19    "NUnit": {20    }21  }22}23using NUnitLite;24{25    {26        static int Main(string[] args) => new AutoRun().Execute(args);27    }28}PageTest
Using AI Code Generation
1using NUnit.Framework;2using Microsoft.Playwright;3using System.Threading.Tasks;4using System;5using System.Collections.Generic;6using System.Linq;7using System.Text;8using System.Threading.Tasks;9{10    {11        public async Task TestMethod1()12        {13            await Page.ScreenshotAsync("google.png");14            await Page.ScreenshotAsync("google.png");15            await Page.ScreenshotAsync("google.png");16        }17    }18}19Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "2", "2.csproj", "{D5F9A5B5-5B5F-4D7E-A2C5-5C5F3E8D5B1E}"20	GlobalSection(SolutionConfigurationPlatforms) = preSolution21	GlobalSection(ProjectConfigurationPlatforms) = postSolution22		{D5F9A5B5-5B5F-4D7E-A2C5-5C5F3E8D5B1E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU23		{D5F9A5B5-5B5F-4D7E-A2C5-5CPageTest
Using AI Code Generation
1using System;2using System.IO;3using System.Reflection;4using NUnit.Framework;5using Microsoft.Playwright;6{7    {8        private static readonly string BaseDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);9        private IPage page;10        public async System.Threading.Tasks.Task SetupAsync()11        {12            var playwright = await Playwright.CreateAsync();13            var browser = await playwright.Chromium.LaunchAsync(new BrowserTypeLaunchOptions14            {15            });16            page = await browser.NewPageAsync();17        }18        public async System.Threading.Tasks.Task TeardownAsync()19        {20            await page.CloseAsync();21        }22        public async System.Threading.Tasks.Task Test1Async()23        {24            await page.ScreenshotAsync(Path.Combine(BaseDirectory, "google.png"));25        }26    }27}28    <PackageReference Include="Microsoft.Playwright.NUnit" Version="$(PlaywrightVersion)" />LambdaTest’s Playwright tutorial will give you a broader idea about the Playwright automation framework, its unique features, and use cases with examples to exceed your understanding of Playwright testing. This tutorial will give A to Z guidance, from installing the Playwright framework to some best practices and advanced concepts.
Get 100 minutes of automation test minutes FREE!!
