我想在scrutinizer中跳过一些phpunit测试。
我怎样才能实现同样的目标?
我需要在哪里进行配置更改?
许多CI系统包括Scrutinizer CI在其构建环境中设置环境变量。
例如,环境变量SCRUTINIZER
设置为TRUE
。这只是其中之一,了解更多关于Pre-defined Environment Variables on Scrutinizer CI。
在测试方法内部(或在整个类的setUp()
方法内),您可以检查环境变量(例如通过$_ENV
)并将测试标记为跳过。
if (isset($_ENV['SCRUTINIZER'])) {
$this->markTestSkipped(
'Scrutinizer CI build'
);
}
另请参阅更一般的问题How to skip tests in PHPunit?和Phpunit文档Incomplete and Skipped Tests。
在我的例子中,我在应用程序级别的.scrutinizer.yml文件中添加了./vendor/bin/phpunit --exclude-group Group1, Group2
命令,以跳过表示这些组的phpunits,如下所示:
build:
nodes:
acsi:
tests:
override:
- './vendor/bin/phpunit --exclude-group Group1, Group2'
- phpcs-run --standard=phpcs.xml
- php-scrutinizer-run