来自PHPUnit的奇怪输出

我已经通过PEAR安装了PHPUnit,并且还安装了WordPress插件testing( https://github.com/tierra/wordpress-plugin-tests )来testing我正在开发的WordPress插件。

在正常运行testing时,我得到以下输出:

Running as single site... To run multisite, use -c multisite.xml Not running ajax tests... To execute these, use --group ajax. PHPUnit 3.7.21 by Sebastian Bergmann. Configuration read from E:\LocalWebServer\dch\c\my-wp-installtion.dch\wordpress-test\wordpress\wp-content\plugins\myplugin\phpunit.xml [41;37mF[0m.[36;1mS[0m Time : 1 second, Memory: 30.50Mb There was 1 failure: 1) CDOAjax_Tests::test_tests Failed asserting that false is true. E:\LocalWebServer\dch\c\my-wp-installtion.dch\wordpress-test\wordpress\wp-content\plugins\myplugin\Tests\test_CDOAjax_tests.php:7 [37;41m[2KFAILURES! [0m[37;41m[2KTests: 3, Assertions: 2, Failures: 1, Skipped: 1. [0m[2K 

我不知道这是否有帮助,但phpunit.xml包含以下内容:

 <phpunit bootstrap="bootstrap_tests.php" backupGlobals="false" colors="true" > <testsuites> <!-- Default test suite to run all tests --> <testsuite name="cabdriver"> <directory prefix="test_" suffix=".php">tests</directory> </testsuite> </testsuites> </phpunit> 

正如你所看到的,PHPUnit输出有一些奇怪的字符,如最后一行包含[0m [2k。

我的系统是Windows 7,我运行XAMPP,通过PEAR安装PHPUnit

所以,我可以以某种方式解决这个问题,因为输出结果不是很清楚。

亲切的问候

这些是unix控制台的颜色代码,它们在phpunit框架中被硬编码,你可以在这里看到: https : //github.com/sebastianbergmann/phpunit/blob/master/PHPUnit/TextUI/ResultPrinter.php

例如:500行到509行。

 public function addError(PHPUnit_Framework_Test $test, Exception $e, $time) { if ($this->colors) { $this->writeProgress("\x1b[31;1mE\x1b[0m"); } else { $this->writeProgress('E'); } $this->lastTestFailed = TRUE; } 

我相信你可以在phpunit.xml文件中隐藏设置属性colors =“false”的颜色:

 <phpunit colors="false"> <!-- ... --> </phpunit> 

你可以在这里阅读更多: http : //phpunit.de/manual/3.7/en/appendixes.configuration.html