diff --git a/src/client/browserContext.ts b/src/client/browserContext.ts index 6d2377e745..000f404f02 100644 --- a/src/client/browserContext.ts +++ b/src/client/browserContext.ts @@ -35,6 +35,7 @@ import * as structs from '../../types/structs'; import { CDPSession } from './cdpSession'; import { Tracing } from './tracing'; import type { BrowserType } from './browserType'; +import { Artifact } from './artifact'; export class BrowserContext extends ChannelOwner implements api.BrowserContext { _pages = new Set(); @@ -346,7 +347,11 @@ export class BrowserContext extends ChannelOwner { + const remoteServer = await startRemoteServer(); + const browser = await browserType.connect(remoteServer.wsEndpoint()); + const harPath = testInfo.outputPath('test.har'); + const context = await browser.newContext({ + recordHar: { + path: harPath, + } + }); + const page = await context.newPage(); + await page.goto(server.EMPTY_PAGE); + await context.close(); + await browser.close(); + + const log = JSON.parse(fs.readFileSync(harPath).toString())['log']; + expect(log.entries.length).toBe(1); + const entry = log.entries[0]; + expect(entry.pageref).toBe(log.pages[0].id); + expect(entry.request.url).toBe(server.EMPTY_PAGE); +});