nebulosar / codeception-coverage-checker
Codeception的扩展。可以用来在测试覆盖率低于阈值时失败测试
Requires
- php: >=7.2.0
- codeception/codeception: *
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-12 23:22:53 UTC
README
Codeception的扩展。可以用来在测试覆盖率低于阈值时失败测试。
它做什么
CoverageChecker是一个为Codeception制作的扩展。你可以使用这个简单的扩展让你的构建在代码覆盖率不够高时失败。如果你只需要从分析器中获取代码覆盖率检查,这就是你想要的。无需昂贵的云分析器!
示例
例如,你的Travis构建。通过运行你的测试并使用codeception,你可以看到你的代码是否仍然有效。现在,你还可以检查是否有足够的代码被这些测试覆盖!这个仓库就是这个的活生生的例子。
安装
你需要什么
Codeception
这是显而易见的,因为这是一个Codeception扩展。有关更多信息,请参阅扩展
XDebug
用于生成代码覆盖率报告。请访问XDebug下载页面以找到您的安装。如果您不确定需要哪个下载,可以使用XDebug向导找到正确的版本。
使用composer安装
composer require nebulosar/codeception-coverage-checker --dev
简单地将CoverageReporter添加到codeception.yml文件中
extensions:
enabled:
- Nebulosar\Codeception\CoverageChecker
还要确保您已启用Codeception的代码覆盖率选项
coverage:
enabled: true
check: lines
用法
要使用此扩展,您需要在运行测试时添加--coverage命令行选项。它的工作方式与您使用codeception为您生成覆盖率报告的方式相同。在您的codeception.yml文件中启用coverage标记就足够了。
配置选项
您可以在codeception.yml文件中的coverage标签下完成此插件的全部配置。以下是所有选项的示例。以下是对它们的解释。
coverage:
enabled: true
check:
classes:
low_limit: 65
high_limit: 85
methods:
low_limit: 65
high_limit: 85
lines:
low_limit: 65
high_limit: 85
启用
这是默认的Codeception设置,当您想使用Codeception的覆盖率部分时,需要将其设置为true。在此阶段,CoverageChecker也监听此设置以确定是否检查覆盖率。
检查
这是扩展设置。当您添加此属性时,您可以选择三种类型:classes、methods和lines。这决定了您想要检查的内容。如果您只对行覆盖率感兴趣,可以简单地使用check: lines,该扩展将正常工作。
限制 每种检查类型都有两个可能设置的属性。这些是low_limit(低限制)和high_limit(高限制)。
- 当代码覆盖率低于低限制时,它将抛出
CodeCoverageException,并且您的构建将失败。 - 当代码覆盖率低于高限制时,它将向您发出警告。
- 当代码覆盖率高于高限制时,它将向您显示一条消息,说明覆盖率高于限制,并且将以绿色显示(成功)。
如果您选择不提供限制,它将采用默认值,即60%(低限制)和80%(高限制)。
命令行选项
覆盖率选项
此--coverage选项是必需的,但也可以用任何覆盖率选项代替。以下是可用的选项:
--coverage--coverage-xml--coverage-html--coverage-text--coverage-crap4j--coverage-phpunit
颜色 一些人对事物喜欢保持平淡,并且对控制台输出非常认真。因此,添加了对 --no-colors 选项的支持。当使用此选项时,输出将无颜色。
支持
当你发现某些东西不像预期那样工作的时候
当你发现某些东西可以改进的时候
当你认为自己是一位整洁的开源程序员的时候
帮助所有人改进这个扩展!提交一个问题,重现步骤,如果你可以的话,提交一个带有建议修复的拉取请求!
许可
MIT
(请参阅许可页面)