2016-11-12 6 views
0

phpunit/php-code-coverage에서 커버리지 리포트를 받는데 문제가 있습니다.phpunit없이 coverage report 받기

내가 할 때 예상대로

xdebug_start_code_coverage(); 
// code 
print_r(xdebug_get_code_coverage()); 

나는 커버리지 정보를 얻을 수 있습니다. 필자는 phpunit/php-code-coverage를 사용하여 결과 내보내기를 처리하기로 결정했습니다. 저장소에 제안 된 것과 같이 사용하려고합니다.

$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage; 
$coverage->start(); 
// code 
$coverage->stop(); 
$writer = new \SebastianBergmann\CodeCoverage\Report\Clover; 
$writer->process($coverage, '/tmp/clover.xml'); 

그런 다음 결과는 비어 있습니다. 내가 xdebug_get_code_coverage()을 사용하여 어떤 결과가 나오는지 보았을 때 비어 있습니다. $coverage->stop()을 제거하면 패키지가 아닌 xdebug_get_code_coverage() 기능 만 사용하여 결과를 얻습니다. 이 작업을 수행하기 위해 뭔가 다른 작업을해야하는지 잘 모르겠습니다.

답변

1

추가 단계가 필요합니다. 허용하려는 파일을 허용 목록에 추가하십시오.

$driver = \SebastianBergmann\CodeCoverage\Driver\Xdebug; 
$filter = new \SebastianBergmann\CodeCoverage\Filter; 
$filter->addDirectoryToWhitelist('/directory'); 
$coverage = new \SebastianBergmann\CodeCoverage\CodeCoverage($driver, $filter); 
$coverage->start(); 
// code 
$coverage->stop(); 
$writer = new \SebastianBergmann\CodeCoverage\Report\Clover; 
$writer->process($coverage, '/tmp/clover.xml');