Add Playwright Testing

This commit is contained in:
Kira 2023-09-20 12:02:36 -07:00
parent c4f54c70b6
commit 51f7dacd45
4 changed files with 65 additions and 0 deletions

View File

@ -0,0 +1 @@
global using NUnit.Framework;

View File

@ -0,0 +1,21 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<IsPackable>false</IsPackable>
<IsTestProject>true</IsTestProject>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.0" />
<PackageReference Include="Microsoft.Playwright.NUnit" Version="1.38.0" />
<PackageReference Include="NUnit" Version="3.13.3" />
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
<PackageReference Include="NUnit.Analyzers" Version="3.6.1" />
<PackageReference Include="coverlet.collector" Version="6.0.0" />
</ItemGroup>
</Project>

View File

@ -0,0 +1,37 @@
using Microsoft.Playwright;
using Microsoft.Playwright.NUnit;
using NUnit.Framework;
namespace ShopOnline.Test;
public class NunitPlaywright : PageTest
{
[SetUp]
public async Task Setup()
{
await Page.GotoAsync("https://localhost:7081/");
}
[Test]
public async Task AddOneOfEachToCart()
{
await Page.PauseAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Glossier - Beauty Kit $100.00" }).ClickAsync();
await Page.GetByRole(AriaRole.Button, new() { Name = "Add To Cart" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Home" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Curology - Skin Care Kit $50.00" }).ClickAsync();
await Page.GetByRole(AriaRole.Button, new() { Name = "Add To Cart" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Furniture" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Lounge Chair $70.00" }).ClickAsync();
await Page.GetByRole(AriaRole.Button, new() { Name = "Add To Cart" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Electronics" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Nintendo Gameboy $100.00" }).ClickAsync();
await Page.GetByRole(AriaRole.Button, new() { Name = "Add To Cart" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Shoes" }).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = "Red Nike Trainers $200.00" }).ClickAsync();
await Page.GetByRole(AriaRole.Button, new() { Name = "Add To Cart" }).ClickAsync();
await Page.GetByRole(AriaRole.Button).Nth(1).ClickAsync();
await Page.GetByRole(AriaRole.Link, new() { Name = " Proceed to Checkout" }).ClickAsync();
}
}

View File

@ -9,6 +9,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShopOnline.Api", "ShopOnlin
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShopOnline.Models", "ShopOnline.Models\ShopOnline.Models.csproj", "{C0674431-3C6E-4F51-8A5C-0523243EB33D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShopOnline.Test", "ShopOnline.Test\ShopOnline.Test.csproj", "{8DDCE9E9-6FF7-46EB-85B2-DC2415D0B93C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -27,6 +29,10 @@ Global
{C0674431-3C6E-4F51-8A5C-0523243EB33D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C0674431-3C6E-4F51-8A5C-0523243EB33D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C0674431-3C6E-4F51-8A5C-0523243EB33D}.Release|Any CPU.Build.0 = Release|Any CPU
{8DDCE9E9-6FF7-46EB-85B2-DC2415D0B93C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8DDCE9E9-6FF7-46EB-85B2-DC2415D0B93C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8DDCE9E9-6FF7-46EB-85B2-DC2415D0B93C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8DDCE9E9-6FF7-46EB-85B2-DC2415D0B93C}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE