要在类似工具PHPMD和PHPCS中进行语境设置,可以为结果输出指定自定义格式化程序,例如:
PHPMD:
vendor/bin/phpmd test \\my\\namespace\\renderers\\phpmd\\AdamFormat phpmd.xml
PHPCS:
vendor/bin/phpcs --standard=phpcs.xml --report=./src/renderers/phpcs/AdamFormat.php
我希望为PHPUnit做同样的事情,但是因此得到了一个空白(调查,谷歌搜索,在这里搜索)。看看PHPUnit的代码,这对我来说似乎有点硬编码:
if (isset($arguments['coverageClover'])) {
$this->printer->write(
"\nGenerating code coverage report in Clover XML format ..."
);
try {
$writer = new CloverReport;
if (isset($arguments['testdoxHTMLFile'])) {
$result->addListener(
new HtmlResultPrinter(
我没有发现docs中的任何其他地方。对我来说似乎是一个奇怪的缺陷。
所以有两个问题:
我意识到可以使用--coverage-php
选项将结果作为PHP变量输出到另一个进程然后用来做[无论如何],但这对我来说似乎是一种由内而外的方法,并且属于希思罗宾逊类别。