Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phing与phpunit编码覆盖结果_Php_Code Coverage_Phpunit_Phing - Fatal编程技术网

phing与phpunit编码覆盖结果

phing与phpunit编码覆盖结果,php,code-coverage,phpunit,phing,Php,Code Coverage,Phpunit,Phing,我已经为phing创建了一个build.xml文件来创建代码覆盖率报告。它使用 phpunit codecoverage="true" 并指向与phpunit相同的文件——覆盖率html。然而,结果有所不同。使用phing,我对所有文件都有100%的代码覆盖率,但我没有。关于使用phing运行代码覆盖率,可能有一些我不知道的地方可以100%解释这一点。为了得到不同的结果,我做错了什么?您可以尝试将phpunit作为一个可执行文件运行,并将--coverage html作为一个参数运行(我们就是

我已经为phing创建了一个build.xml文件来创建代码覆盖率报告。它使用

phpunit codecoverage="true"

并指向与phpunit相同的文件——覆盖率html。然而,结果有所不同。使用phing,我对所有文件都有100%的代码覆盖率,但我没有。关于使用phing运行代码覆盖率,可能有一些我不知道的地方可以100%解释这一点。为了得到不同的结果,我做错了什么?

您可以尝试将phpunit作为一个可执行文件运行,并将--coverage html作为一个参数运行(我们就是这样做的,而且似乎工作得很好)

例如:

<target name="phpunit">
 <exec executable="phpunit" dir="${basedir}/source" failonerror="on">
  <arg line="--log-junit ${basedir}/build/logs/phpunit.xml
  --coverage-clover ${basedir}/build/logs/phpunit.coverage.xml
  --coverage-html ${basedir}/build/coverage
  tests/" />
 </exec>
</target>

第一个答案中的示例无效。这是Ant的一个例子。Phing ExecTask不支持将“arg”作为嵌套元素

Phing的工作示例:

<target name="phpunit">
    <exec command="phpunit --log-junit ${logsdir}/phpunit.xml 
        --coverage-clover ${logsdir}/phpunit.coverage.xml 
        --coverage-html ${logsdir}/coverage 
        tests/" />
</target>

有什么区别?你解决的问题是什么?