2012-10-16 2 views
4

Google 테스트를 사용하여 단위 테스트를 실행하고 결과를 TeamCity에 보내는 방법을 파악하려고합니다.Google Test에서 TeamCity의 XML 보고서 가져 오기

나는 내 테스트를 실행하고 명령 행 인자 --gtest_output="xml:test_results.xml"을 사용하여 결과를 XML로 출력했다.

이 xml을 TeamCity에서 읽으려고합니다. 내가 XML report Processing를 제외하고 ... 나는 XML Reports 빌드/실행 중 인 TeamCity에 전달 얻을 수있는 방법

이 표시되지 않는 :

내가 XML 보고서 처리 추가, 구글 테스트를 추가, 다음 ... 그것은 나에게 묻는다 모니터링 규칙을 지정하고 xml 파일의 경로를 추가했습니다 ... 모니터링 규칙이 무엇인지, 또는 어떻게 작성하는지 이해할 수 없습니다 ...

[여전히 생성 된 xml은 아무 것도 볼 수 없습니다. , TeamCity와 이야기하려고한다는 사실 ...]

로그에 :

Google Test report watcher 
[13:06:03][Google Test report watcher] No reports found for paths: 
[13:06:03][Google Test report watcher] C:\path\test_results.xml 
[13:06:03]Publishing internal artifacts 

그리고 물론 보고서 결과가 없습니다.

누구든지 TeamCity에 xml 테스트 결과 파일을 가져 오는 올바른 방법을 안내해 줄 수 있습니까? 정말 고맙습니다 !

편집 : XML 보고서 처리는 빌드 중에 작성된 보고서 만 처리 할 수 ​​있습니까? (Google 테스트는하지 않습니까?) 이전에 생성 된 보고서를 "오래된 것"으로 무시하고 단순히 찾을 수 없다거나 잘못된 형식으로 표시하거나 ... 그러나 위의 메시지를 읽으시겠습니까?

답변

8

bug report은 빌드 중에 생성되지 않은 xml 보고서가 무시된다는 것을 보여 주므로 저와 같은 초보자가 제대로 생성되지 않을 수 있다고 생각합니다.

두 가지 간단한 솔루션 :

1) 포스트 빌드 스크립트

2) 명령 줄 인수 명령 줄 실행 파일을 호출하는 빌드 단계 추가를 만듭니다. 예 :

추가 빌드 단계

enter image description here

빌드 기능 추가 - XML ​​보고서 처리

enter image description here

+0

나는 내 자신이 같은 문제를 겪고 있다고 생각한다. 문제와 해결책을 설명 할 수 있을까? –

+0

네, 잘 작동합니다. – qub1n

1

나는 일을 점점 비슷한 문제가 있었다. 이것은 내가 어떻게 작동하게했는지입니다.

명령 줄에서 Google 테스트 실행 파일을 호출 할 때 % teamcity.build 앞에 추가하십시오.XML 파일의 이름 checkoutDir %의이 같은 그것의 경로 설정 : 빌드 단계 페이지에서 추가 빌드 기능을 구성 할 때 다음

--gtest_output=xml:%teamcity.build.checkoutDir%test_results.xml 

을 모니터링 규칙이 줄을 추가 :

%teamcity.build.checkoutDir%test_results.xml 

이제 경로가 일치하고 빌드 디렉토리에 있습니다.