Skip to content

Commit 97f8264

Browse files
committed
Test reliability
1 parent 2856dca commit 97f8264

File tree

3 files changed

+25
-17
lines changed

3 files changed

+25
-17
lines changed

src/ProjectTemplates/BlazorTemplates.Tests/BlazorServerTemplateTest.cs

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -138,10 +138,13 @@ public async Task BlazorServerTemplateWorks_IndividualAuth(BrowserKind browserKi
138138
await aspNetProcess.AssertStatusCode("/", HttpStatusCode.OK, "text/html");
139139
if (Fixture.BrowserManager.IsAvailable(browserKind))
140140
{
141-
var page = await browser.NewPageAsync();
142-
await aspNetProcess.VisitInBrowserAsync(page);
143-
await TestBasicNavigation(page);
144-
await page.CloseAsync();
141+
for (int i = 0; i < 100; i++)
142+
{
143+
var page = await browser.NewPageAsync();
144+
await aspNetProcess.VisitInBrowserAsync(page);
145+
await TestBasicNavigation(page);
146+
await page.CloseAsync();
147+
}
145148
}
146149
else
147150
{
@@ -158,10 +161,13 @@ public async Task BlazorServerTemplateWorks_IndividualAuth(BrowserKind browserKi
158161
await aspNetProcess.AssertStatusCode("/", HttpStatusCode.OK, "text/html");
159162
if (Fixture.BrowserManager.IsAvailable(browserKind))
160163
{
161-
var page = await browser.NewPageAsync();
162-
await aspNetProcess.VisitInBrowserAsync(page);
163-
await TestBasicNavigation(page);
164-
await page.CloseAsync();
164+
for (int i = 0; i < 100; i++)
165+
{
166+
var page = await browser.NewPageAsync();
167+
await aspNetProcess.VisitInBrowserAsync(page);
168+
await TestBasicNavigation(page);
169+
await page.CloseAsync();
170+
}
165171
}
166172
else
167173
{
@@ -172,8 +178,10 @@ public async Task BlazorServerTemplateWorks_IndividualAuth(BrowserKind browserKi
172178

173179
private async Task TestBasicNavigation(IPage page)
174180
{
175-
var socket = BrowserContextInfo.Pages[page].WebSockets.SingleOrDefault() ??
176-
(await page.WaitForEventAsync(PageEvent.WebSocket)).WebSocket;
181+
var socket = (await page.WaitForEventAsync(PageEvent.WebSocket)).WebSocket;
182+
183+
// Start circuit
184+
await socket.WaitForEventAsync(WebSocketEvent.FrameSent);
177185

178186
// Receive render batch
179187
await socket.WaitForEventAsync(WebSocketEvent.FrameReceived);

src/ProjectTemplates/BlazorTemplates.Tests/playwrightSettings.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
"Timeout": 30000
1111
},
1212
"GlobalContextOptions": {
13-
"RecordVideo": {
14-
"Dir": "videos"
15-
},
16-
"RecordHar": {
17-
"Path": "har"
18-
},
13+
//"RecordVideo": {
14+
// "Dir": "videos"
15+
//},
16+
//"RecordHar": {
17+
// "Path": "har"
18+
//},
1919
"IgnoreHTTPSErrors": true
2020
},
2121
"BrowserOptions": {

src/Shared/BrowserTesting/src/BrowserManagerConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ private static BrowserContextOptions Combine(BrowserContextOptions defaultOption
313313
Proxy = overrideOptions?.Proxy != default ? overrideOptions.Proxy : defaultOptions.Proxy,
314314
RecordVideo = overrideOptions?.RecordVideo != default ?
315315
new() { Dir = overrideOptions.RecordVideo.Dir, Size = overrideOptions.RecordVideo.Size?.Clone() } :
316-
defaultOptions != default ?
316+
defaultOptions?.RecordVideo != default ?
317317
new() { Dir = defaultOptions.RecordVideo.Dir, Size = defaultOptions.RecordVideo.Size?.Clone() } :
318318
default,
319319
RecordHar = overrideOptions?.RecordHar != default ?

0 commit comments

Comments
 (0)