2011-11-20 2 views
2

Cruise Control에 MSTest (Visual Studio 2010 버전)를 통합하려고합니다. 실패한 테스트 표시를 포함하여 테스트 보고서를 빌드 보고서에 표시 할 수 있습니다. 그러나 테스트가 실패하더라도 CruiseControl 빌드는 여전히 성공합니다 (예 : CCTray에서는 빌드가 '녹색으로 바뀝니다'). 빌드 웹 페이지에서 'Suites run : 0', 'Tests run : 0'등이 표시됩니다.CruiseControl 및 MSTest : 테스트 실패시 빌드 실패 받기

테스트가 실패하면 빌드가 실패합니다 (예 : 'go red'). .

나는 웹을 통해 수색했으며, 찾을 수있는 모든 조언을 따라 갔지만 아무 소용이 없었다. 도움이나 조언을 주시면 감사하겠습니다. 미리 감사드립니다! :)

답변

0

msbuild.exe은 테스트 완료시 테스트 통과시 "true" 종료 코드 ($?)를 반환합니다. ResultsSummary 섹션에 대한 * .trx 결과 파일 (특히 "passed""executed" 카운터)을 검사해야합니다.

Jenkins은 * .trx을이 형식으로 변환하는 형식 (jUnit)으로 변환하는 방법이 있습니다.

내가 MSTEST가 출력 파일 잠시 후 실패에 대해 다음과 같이 확인하고 다음 (젠킨스는 테스트가 실패했음을 알게되는) 비 제로 상태로 종료되는 지정 실행하는 배치 스크립트있어 :

findstr "testsFailed=""[^0]""" "C:\Jenkins\workspace\YOUR_PROJECT\YOUR_RESULTS.trx" >"C:\Jenkins\workspace\YOUR_PROJECT\YOUR_RESULTS.out" && exit 1