E2ETestBase.cs 701 B

1234567891011121314151617181920212223242526
  1. using Microsoft.Playwright;
  2. using Xunit.Abstractions;
  3. namespace Tests.E2e.Infra;
  4. public abstract class E2ETestBase(
  5. PlaywrightFixture fixture,
  6. ITestOutputHelper output) : IClassFixture<PlaywrightFixture>
  7. {
  8. public async Task<(IBrowserContext, IPage)> CreatePageAsync()
  9. {
  10. var context = await fixture.Browser.NewContextAsync();
  11. var page = await context.NewPageAsync();
  12. page.Console += (_, msg) =>
  13. output.WriteLine($"[BrowserConsole] {msg.Type}: {msg.Text}");
  14. page.PageError += (_, msg) =>
  15. output.WriteLine($"[PageError] {msg}");
  16. output.WriteLine($"BaseUrl: {fixture.BaseUrl}");
  17. return (context, page);
  18. }
  19. }