我试图让PHPUnit在Netbeans中工作。我正在使用3.4.9,但拒绝工作,建议升级到最新版本。我现在已经升级到3.5.15,当我运行它时,我得到以下消息:
unrecognized option --log-xml
我知道这不是一个有效的日志记录选项,但是我不知道在哪里设置或如何更改它。我的phpunt .xml文件是:
<phpunit bootstrap="./application/bootstrap.php" colors="true">
<testsuite name="Personal Development">
<directory>./</directory>
</testsuite>
<filter>
<whitelist>
<directory suffix=".php">../application/</directory>
<exclude>
<file>../application/Bootstrap.php</file>
<file>../application/controllers/ErrorController.php</file>
<directory suffix=".phtml">../application/</directory>
</exclude>
</whitelist>
</filter>
<logging>
<log type="coverage-html" target="./log/report" charset="UTF-8"
yui="true" highlight="true" lowUpperBound="50" highLowerBound="80"/>
<log type="testdox-html" target="./log/testdox.html" />
</logging>
</phpunit>
如何修复此错误?
为了强制PHPUnit使用正确的文件,我必须右键单击项目名称,设置配置,自定义,PHPUnit,然后隐式指定引导和XML配置文件的位置。
我在使用XAMPP、PHPUnit 3.5和NetBeans 7时遇到了类似的问题。问题是,NetBeans出于某种原因总是将选项"——log-xml"传递给PHPUnit .bat,但这个选项在PHPUnit 3.5中不再存在了。
我的解决方案是编辑PHPUnit配置XML文件:C: xampp php phpunit.xml梨 MIME_Type 测试测试
(注意文件路径取决于PEAR或PHPUnit安装的路径!)
我必须添加一个新节点,"logging":
<?xml version="1.0" encoding="utf-8"?>
<phpunit strict="true" colors="true"
bootstrap="bootstrap.php"
>
<filter>
<whitelist>
<directory suffix=".php">../MIME/</directory>
</whitelist>
</filter>
<logging>
<log type="junit" target="c:/xampp/tmp/logfile.xml" logIncompleteSkipped="false"/>
</logging>
</phpunit>
在此更改之后,NetBeans不再传递"——log-xml"选项,而是传递"——log-junit"选项,该选项在PHPUnit 3.5中有效。现在再次验证MyTests。: -)