1

테스트에서 예외가있을 때 Jenkins가 xunit.xml 보고서 파일을 구문 분석하는 데 문제가 있습니다. XML은 잘 구성된 것처럼 보이므로 단지 그것을 보면서 어떤 문제도 볼 수 없습니다. xml 파일을 대체 할 수있는 xsd 파일이 실제로 파일을 읽을 수 없게 만드는 원인을보기 위해 비교할 수 있습니까?젠킨스에서 사용하는 PHPUnit 보고서 스키마는 어디에 있습니까?

내 설치 정보 : 젠킨스에서 PHP 프로젝트를 위해 야간 작업을 설정했습니다. 우리는 Cakephp 1.3을 사용하고 있으므로 PHPUnit 대신에 SimpleTest를 사용하고 있습니다. simpletest를 사용하는 동안 보고서 xml을 쉽게 생성 할 수있는 유일한 방법은 stagehand_testrunner (http://redmine.piece-framework.com/projects/stagehand-testrunner)를 사용하는 것이 었습니다. 내 빌드 스크립트에서 나는 다음과 같이했다 : cakerunner --cakephp-app-path = src/app --log- junit = 빌드/테스트 결과/junit.xml -R src/app/tests

이것은 작동한다. 그러나 jenkins는 테스트에 예외가 발생하면 junit.xml을 구문 분석 할 수 없습니다.

답변

4

이것은 내 바보 같았습니다. 나는 stagehand-test 러너가 결과의 XML을 JUnit 형식으로 포맷했다고 믿습니다. PHPUnit에서 JUnit으로 JUnit XML 보고서를 변환하려고했습니다.

Jenkins에서는 "테스트 도구 게시 결과 보고서"대신 "JUnit 테스트 결과 보고서 게시"옵션을 사용해야했습니다. 후자는 다른 테스트 프레임 워크에서 JUnit 형식으로 변환하는 데 사용됩니다. 이미 JUnit 형식의 파일을 가지고 있으므로 변환 할 필요가 없습니다.

나는 이것을 확인해야하지만 나는 그것이 사실이라고 믿는다.

CakePHP 2.0으로 옮겨서 PHPUnit을 사용할 때 기뻐할 것입니다.

+0

어제 "SimpleTest"가 눈치 챘지만 모든 것을 읽지 못했습니다 :/Jenkins와 PHPUnit을 사용하려면 http://jenkins-php.org를 확인하십시오. - 자습서와 jenkins 샘플 프로젝트가 구성되어 있습니다. 모든 .xml 파일을 php qa 도구가 생성 :) – edorian