
这是一个用于 Webdriver IO v6 及更高版本 的报告生成器,可以为您的 wdio 测试执行生成视频。如果您使用 allure,那么测试用例也会自动添加视频。(对于 Webdriver IO v5,请使用 wdio-video-reporter 版本 ^2.0.0。)
视频将保存在 wdio.config.outputDir 中
查看包 含失败测试视频的 Allure 报告示例: https://presidenten.github.io/wdio-video-reporter-example-report/

优点:
- 在 allure 报告中有漂亮的视频
- 视频播放速度适合人类观看,即使测试执行速度很快
- 支持 Selenium 网格
- 适用于所有支持
saveScreenshot的 webdriver - 已验证在以下使用 Selenium 3.141.59 的桌面浏览器上可用:
- Chrome
- Firefox
- Safari
- Internet Explorer 11
- Microsoft Edge
- 已验证在以下使用 Appium 1.13.0-beta3 的 iOS 和 Android 设备上可用:
- Iphone 8
- Ipad Gen 6
- Samsung galaxy S9
- Samsung galaxy tab A10
缺点:
- 通过在"操作"后截取屏幕截图工作,这会使测试速度变慢一些。通过仔细选择哪些 jsonWireProtocol 消息应该导致截图来缓解这一问题
- Selenium 驱动程序的截图不包括警告框和弹出窗口,因此它们在视频中不可见
快速开始
查看 wdio-template 中的简单模板,快速上手。
克隆其中一个存储库并使用 yarn 或 npm install 安装依赖项。然后在 demo 目录中运行 yarn e2e 或 npm run e2e,最后运行 yarn report 或 npm run report 查看 allure 报告。
安装
安装报告器
yarn add wdio-video-reporter
或
npm install wdio-video-reporter
将报告器添加到配置
在 wdio.conf.js 文件的顶部,引入库:
const video = require('wdio-video-reporter');
然后将视频报告器添加到 reporters 属性的配置中:
reporters: [
[video, {
saveAllVideos: false, // 如果为 true,也会保存成功测试用例的视频
videoSlowdownMultiplier: 3, // 更高的值获得更慢的视频,更低的值获得更快的视频 [值 1-100]
}],
],
与 Allure 一起使用
添加 Allure 报告器后,会自动将视频更新到报告中,无需任何额外配置 :-)
reporters: [
[video, {
saveAllVideos: false, // 如果为 true,也会保存成功测试用例的视频
videoSlowdownMultiplier: 3, // 更高的值获得更慢的视频,更低的值获得更快的视频 [值 1-100]
}],
['allure', {
outputDir: './_results_/allure-raw',
disableWebdriverStepsReporting: true,
disableWebdriverScreenshotsReporting: true,
}],
],
配置
常规配置参数
大多数用户可能需要设置这些
saveAllVideos设置为 true 以保存通过测试的视频。默认值:falsevideoSlowdownMultiplier1-100 之间的整数。如果视频播放太快,请增加此值。默认值:3videoRenderTimeout等待视频渲染的最大秒数。默认值:5outputDir如果未设置,则使用 wdio.config.outputDir。默认值:undefinedoutputDir如果未设置,则使用 wdio.config.outputDir。默认值:undefinedmaxTestNameCharacters测试名称的最大长度。默认值:250