视频
介绍
¥Introduction
使用 Playwright,你可以录制视频以供测试。
¥With Playwright you can record videos for your tests.
录视频
¥Record video
Playwright Test 可以为你的测试录制视频,由 Playwright 配置中的 video
选项控制。默认情况下,视频处于关闭状态。
¥Playwright Test can record videos for your tests, controlled by the video
option in your Playwright config. By default videos are off.
-
'off'
- 不要录制视频。¥
'off'
- Do not record video. -
'on'
- 为每次测试录制视频。¥
'on'
- Record video for each test. -
'retain-on-failure'
- 为每个测试录制视频,但从成功的测试运行中删除所有视频。¥
'retain-on-failure'
- Record video for each test, but remove all videos from successful test runs. -
'on-first-retry'
- 仅在第一次重试测试时录制视频。¥
'on-first-retry'
- Record video only when retrying a test for the first time.
视频文件将出现在测试输出目录中,通常为 test-results
。有关高级视频配置,请参阅 testOptions.video。
¥Video files will appear in the test output directory, typically test-results
. See testOptions.video for advanced video configuration.
测试结束时 浏览器上下文 关闭时保存视频。如果你手动创建浏览器上下文,请确保等待 browserContext.close()。
¥Videos are saved upon browser context closure at the end of a test. If you create a browser context manually, make sure to await browserContext.close().
- Test
- Library
import { defineConfig } from '@playwright/test';
export default defineConfig({
use: {
video: 'on-first-retry',
},
});
const context = await browser.newContext({ recordVideo: { dir: 'videos/' } });
// Make sure to await close, so that videos are saved.
await context.close();
你还可以指定视频大小。视频大小默认为缩小到适合 800x800 的视口大小。视口的视频放置在输出视频的左上角,必要时缩小以适合。你可能需要设置视口大小以匹配你所需的视频大小。
¥You can also specify video size. The video size defaults to the viewport size scaled down to fit 800x800. The video of the viewport is placed in the top-left corner of the output video, scaled down to fit if necessary. You may need to set the viewport size to match your desired video size.
- Test
- Library
import { defineConfig } from '@playwright/test';
export default defineConfig({
use: {
video: {
mode: 'on-first-retry',
size: { width: 640, height: 480 }
}
},
});
const context = await browser.newContext({
recordVideo: {
dir: 'videos/',
size: { width: 640, height: 480 },
}
});
对于多页面场景,你可以通过 page.video().X 访问与该页面关联的视频文件。
¥For multi-page scenarios, you can access the video file associated with the page via the page.video().
const path = await page.video().path();
请注意,视频仅在页面或浏览器上下文关闭后才可用。
¥Note that the video is only available after the page or browser context is closed.