diff --git a/TUnit.Playwright/BrowserFixture.cs b/TUnit.Playwright/BrowserFixture.cs
index f22594f610..527b80d491 100644
--- a/TUnit.Playwright/BrowserFixture.cs
+++ b/TUnit.Playwright/BrowserFixture.cs
@@ -18,10 +18,8 @@ public class BrowserFixture : IAsyncInitializer, IAsyncDisposable
public virtual string BrowserName => Microsoft.Playwright.BrowserType.Chromium;
- protected virtual BrowserTypeLaunchOptions GetLaunchOptions() => new()
- {
- Headless = TUnitPlaywrightSettings.Default.DefaultHeadless,
- };
+ protected virtual BrowserTypeLaunchOptions GetLaunchOptions() =>
+ TUnitPlaywrightSettings.Default.DefaultBrowserTypeLaunchOptions ?? new BrowserTypeLaunchOptions();
public virtual async Task InitializeAsync()
{
diff --git a/TUnit.Playwright/BrowserTest.cs b/TUnit.Playwright/BrowserTest.cs
index f3696d83ca..13137f0760 100644
--- a/TUnit.Playwright/BrowserTest.cs
+++ b/TUnit.Playwright/BrowserTest.cs
@@ -5,10 +5,7 @@ namespace TUnit.Playwright;
public class BrowserTest : PlaywrightTest
{
- public BrowserTest() : this(new BrowserTypeLaunchOptions
- {
- Headless = TUnitPlaywrightSettings.Default.DefaultHeadless,
- })
+ public BrowserTest() : this(TUnitPlaywrightSettings.Default.DefaultBrowserTypeLaunchOptions ?? new BrowserTypeLaunchOptions())
{
}
diff --git a/TUnit.Playwright/ContextFixture.cs b/TUnit.Playwright/ContextFixture.cs
index 4db7b6e8fe..31a32daa76 100644
--- a/TUnit.Playwright/ContextFixture.cs
+++ b/TUnit.Playwright/ContextFixture.cs
@@ -24,10 +24,9 @@ public class ContextFixture : IAsyncInitializer, IAsyncDisposable
/// (new BrowserNewContextOptions()).
///
protected virtual BrowserNewContextOptions GetContextOptions() =>
- new()
+ TUnitPlaywrightSettings.Default.DefaultBrowserNewContextOptions ?? new BrowserNewContextOptions
{
Locale = "en-US", ColorScheme = ColorScheme.Light,
- IgnoreHTTPSErrors = TUnitPlaywrightSettings.Default.DefaultIgnoreHttpsErrors,
};
///
diff --git a/TUnit.Playwright/ContextTest.cs b/TUnit.Playwright/ContextTest.cs
index 989dd41b7f..e72a0cdfa4 100644
--- a/TUnit.Playwright/ContextTest.cs
+++ b/TUnit.Playwright/ContextTest.cs
@@ -17,10 +17,9 @@ public ContextTest(BrowserTypeLaunchOptions options) : base(options)
public virtual BrowserNewContextOptions ContextOptions(TestContext testContext)
{
- return new()
+ return TUnitPlaywrightSettings.Default.DefaultBrowserNewContextOptions ?? new BrowserNewContextOptions
{
Locale = "en-US", ColorScheme = ColorScheme.Light,
- IgnoreHTTPSErrors = TUnitPlaywrightSettings.Default.DefaultIgnoreHttpsErrors,
};
}
diff --git a/TUnit.Playwright/PlaywrightSettings.cs b/TUnit.Playwright/PlaywrightSettings.cs
index 5924bb449e..dea42bcd00 100644
--- a/TUnit.Playwright/PlaywrightSettings.cs
+++ b/TUnit.Playwright/PlaywrightSettings.cs
@@ -1,3 +1,4 @@
+using Microsoft.Playwright;
using TUnit.Core.Settings;
namespace TUnit.Playwright;
@@ -18,6 +19,16 @@ internal TUnitPlaywrightSettings()
{
}
- public bool? DefaultHeadless { get; set; } = null;
- public bool? DefaultIgnoreHttpsErrors { get; set; } = null;
+ ///
+ /// Options used when launching the browser for tests inheriting
+ /// or . When non-null, this fully replaces the hardcoded defaults.
+ ///
+ public BrowserTypeLaunchOptions? DefaultBrowserTypeLaunchOptions { get; set; } = null;
+
+ ///
+ /// Options used when creating a browser context for tests inheriting
+ /// or . When non-null, this fully replaces the hardcoded defaults
+ /// (Locale = "en-US", ColorScheme = Light).
+ ///
+ public BrowserNewContextOptions? DefaultBrowserNewContextOptions { get; set; } = null;
}
diff --git a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet10_0.verified.txt b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet10_0.verified.txt
index d0839dfe67..cecc28af37 100644
--- a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet10_0.verified.txt
+++ b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet10_0.verified.txt
@@ -122,8 +122,8 @@ namespace
}
public class TUnitPlaywrightSettings
{
- public bool? DefaultHeadless { get; set; }
- public bool? DefaultIgnoreHttpsErrors { get; set; }
+ public .BrowserNewContextOptions? DefaultBrowserNewContextOptions { get; set; }
+ public .BrowserTypeLaunchOptions? DefaultBrowserTypeLaunchOptions { get; set; }
}
public class WorkerAwareTest : ., .
{
diff --git a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet8_0.verified.txt b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet8_0.verified.txt
index 5acda701c7..4344d617fb 100644
--- a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet8_0.verified.txt
+++ b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet8_0.verified.txt
@@ -122,8 +122,8 @@ namespace
}
public class TUnitPlaywrightSettings
{
- public bool? DefaultHeadless { get; set; }
- public bool? DefaultIgnoreHttpsErrors { get; set; }
+ public .BrowserNewContextOptions? DefaultBrowserNewContextOptions { get; set; }
+ public .BrowserTypeLaunchOptions? DefaultBrowserTypeLaunchOptions { get; set; }
}
public class WorkerAwareTest : ., .
{
diff --git a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet9_0.verified.txt b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet9_0.verified.txt
index d24766fc44..63dfc0f33e 100644
--- a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet9_0.verified.txt
+++ b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.DotNet9_0.verified.txt
@@ -122,8 +122,8 @@ namespace
}
public class TUnitPlaywrightSettings
{
- public bool? DefaultHeadless { get; set; }
- public bool? DefaultIgnoreHttpsErrors { get; set; }
+ public .BrowserNewContextOptions? DefaultBrowserNewContextOptions { get; set; }
+ public .BrowserTypeLaunchOptions? DefaultBrowserTypeLaunchOptions { get; set; }
}
public class WorkerAwareTest : ., .
{
diff --git a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.Net4_7.verified.txt b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.Net4_7.verified.txt
index 058d1b3b65..9b8beca1b2 100644
--- a/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.Net4_7.verified.txt
+++ b/TUnit.PublicAPI/Tests.Playwright_Library_Has_No_API_Changes.Net4_7.verified.txt
@@ -122,8 +122,8 @@ namespace
}
public class TUnitPlaywrightSettings
{
- public bool? DefaultHeadless { get; set; }
- public bool? DefaultIgnoreHttpsErrors { get; set; }
+ public .BrowserNewContextOptions? DefaultBrowserNewContextOptions { get; set; }
+ public .BrowserTypeLaunchOptions? DefaultBrowserTypeLaunchOptions { get; set; }
}
public class WorkerAwareTest : ., .
{