PHPUnit命令行工具中的控制字符有什么问题?

Daw*_*hia 11 php command-line phpunit windows-xp

当我从命令行运行phpunit时,控制字符将被打印出来而不是像控制字符那样.看看这个:

PHPUnit 3.6.5 by Sebastian Bergmann.

Configuration read from app\phpunit.xml.dist

...

Time: 1 second, Memory: 12.00Mb

‹[30;42m‹[2KOK (3 tests, 3 assertions)
‹[0m‹[2K
Run Code Online (Sandbox Code Playgroud)

我认为这些符号‹[30;42m<是某种控制字符,应该由控制台以不同的方式使用(定位光标,删除字符等)

这可能有什么不对?

edo*_*ian 11

发生这种情况是因为您已将phpunit配置为使用颜色.

<phpunit colors="true"
Run Code Online (Sandbox Code Playgroud)

但遗憾的是,无法在Windows终端上创建彩色输出.

phpunit问题跟踪器上存在一个未解决 的问题,我正在为此修补一个补丁.to not show those chars on windows where they can't be translated into colors

现在您所能做的就是以太接受它或color="true"从您的phpunit.xml配置文件中删除它.


cwe*_*ske 11

或者,只需使用https://github.com/adoxa/ansicon/releases在Windows上获取ansi颜色.

源代码:https://github.com/adoxa/ansicon