跳至主要内容

代码覆盖率

WebdriverIO 的浏览器运行器支持使用istanbul进行代码覆盖率报告。测试运行器会自动检测您的代码并捕获代码覆盖率。

设置

为了启用代码覆盖率报告,请通过 WebdriverIO 浏览器运行器配置启用它,例如:

export const config = {
// ...
runner: ['browser', {
preset: process.env.WDIO_PRESET,
coverage: {
enabled: true
}
}],
// ...
}

查看所有代码覆盖率选项,了解如何正确配置它。

忽略代码

您可能希望有意将代码库的某些部分排除在覆盖率跟踪之外,为此,您可以使用以下解析提示

  • /* istanbul ignore if */:忽略下一个 if 语句。
  • /* istanbul ignore else */:忽略 if 语句的 else 部分。
  • /* istanbul ignore next */:忽略源代码中的下一项(函数、if 语句、类,等等)。
  • /* istanbul ignore file */:忽略整个源文件(这应该放在文件顶部)。
信息

建议将您的测试文件排除在覆盖率报告之外,因为它可能会导致错误,例如,当调用 executeexecuteAsync 命令时。如果您希望将它们保留在报告中,请确保通过以下方式排除检测它们

await browser.execute(/* istanbul ignore next */() => {
// ...
})

欢迎!我怎样才能帮到您?

WebdriverIO AI Copilot