2010-07-20 2 views
4

안녕하십니까, 저는 PHPUnit을 사용하여 제가하고있는 Symfony/Doctrine 프로젝트에서 유닛 테스트를하고 있습니다. 어제까지 다양한 수업이 100 % 적용 범위에서 98-99 %로 떨어질 때까지 제대로 작동했습니다. 변경 이유는이 클래스의 여는 왼쪽 중괄호가 더 이상 "덮여"있는 것으로 간주되지 않기 때문입니다. 여기에 문제의 스크린 샷이다 : 나는 모든 노력을했지만 나는 다른 사람들이 잘 "완료"범위를 표시하는 동안이 문제가 일부 클래스의 원인을 알아낼 수 없습니다PHPUnit 커버리지가 클래스의 'opening brace'에 포함되지 않았습니다.

http://imgur.com/RCDzm.png

. 테스트가 여전히 잘 실행 되었기 때문에 무엇보다 성가심이지만, 무슨 일이 일어나고 있는지 알면 좋을 것입니다. PHP 5.3.2, PHPUnit v3.4.15 및 Xdebug v2.1.0을 사용하고 있습니다.

답변

6

이 가능성이

관련 세바스찬 phpunit을하고 Derick에서 고치지 않을 것 (wontfix)로 버그이 아니라고을 표시했다.

이것은 버그가 아닙니다. Xdebug는 항목 (파일, 함수, 메소드)이로드되고 코드 적용 범위가 활성화 된 경우에만 항목을 검색 할 수 있습니다. 클래스 파일은 코드 적용 범위가 활성화되기 전에로드되므로 적용 범위 보고서에서 선택되지 않습니다. 메소드가 실행될 때 검사되어 해당 메소드가 작동합니다.

+2

빙고! 단위 테스트 파일 중 하나에서 길잃은 require_once 호출을 제거하고 제거했습니다 (대신 오토로더에 따라 다름). 비록 이것이 php.ini 설정에서 xdebug.auto_trace를 끄기 때문인지 확실하지 않습니다. – Cowlby

+2

현재 상태 : xDebug는 아직 출시되지 않은 xdebug 버전과 분량으로이 문제를 해결할 수 있습니다. PHP 5.4. – edorian

관련 문제