Результаты покрытия кода phing и phpunit

Я создал файл build.xml для phing, чтобы создавать отчеты о покрытии кода. Оно использует

phpunit codecoverage="true"

и указывает на те же файлы, что и с помощью phpunit --coverage-html. Однако результат отличается. С phing у меня есть 100% покрытие кода для всех файлов, чего у меня нет. Вероятно, есть что-то, чего я не знаю о выполнении покрытия кода с помощью phing, что объясняет это на 100%. Что я делаю неправильно, чтобы получить разные результаты?


person koen    schedule 17.02.2010    source источник


Ответы (2)


Вы можете попробовать запустить 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>
person Mike B    schedule 17.02.2010
comment
В чем разница? Какова проблема, над которой вы работаете? - person cweiske; 30.04.2011

Пример в первом ответе не работает. Этот пример для 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>
person user529913    schedule 03.12.2010