2013-10-09 11 views
9

XCTest와 함께 Jenkins를 사용할 수 있습니까?Jenkins와 XCTest를 통합 할 수 있습니까

OCUnit 출력을 구문 분석하고 Jenkins가 구문 분석 할 수있는 XML 파일을 만드는 루비 스크립트 (OCUnit2JUnit - https://github.com/ciryon/OCUnit2JUnit)가 있습니다.

새로운 XCTest 출력을 처리하는 것과 비슷한 것이 있습니까?

지금 당장 Apple의 지속적인 통합을 사용하는 것은 불가능합니다.

+4

XCTool은 XCTest를 지원하며 Jenkins 통합과 관련하여 훌륭한 역사를 가지고 있습니다. – CodaFi

답변

-1

이것은 내 빌드 시스템에서 ocunit2junit 설치 한 후 내 젠킨스 프로젝트를 실행하는 것입니다 :

xcodebuild test -scheme <my_scheme> -configuration Debug -sdk iphonesimulator7.0 -destination OS=7.0,name="iPhone Retina (4-inch)" | ocunit2junit 

나는 다음 포스트 빌드 작업으로 게시 JUnit 테스트 결과 보고서를 추가했습니다. 처음에는 약간의 flakey 였지만 (빌드 후 작업이 없을 때만 xml 파일을 만들었습니다.) 빌드 머신에서 직접 빌드를 시작한 후에 작동합니다.

+0

공유 주셔서 감사하지만,이 질문에 전혀 대답하지 않습니다 ... – Jake

+0

아하 네 말이 맞아. 나는 그 질문을 잘못 읽었다. – Mark

+0

흠, 분명히 ocunit2junit은 XCTest도 지원합니까? http://stackoverflow.com/a/23256836/797767 – Mark

1

셸 스크립트 빌드 단계를 추가해야합니다.

먼저 빌드 시스템으로 ocunit2junit 보석을 추가

sudo gem install ocunit2junit 

그런 다음 빌드 단계 쉘 스크립트를 추가하고 스크립트를 실행할 때 프로젝트 디렉토리에 있는지 확인하십시오

xcodebuild -workspace yourWorkSpace.xcworkspace -scheme YourTestsScheme -configuration Debug clean test 2>&1 | ocunit2junit 

그런 다음 게시 된 JUnit 테스트 결과 게시 빌드 작업을 Jenkins 작업에 추가하여 ocunit2junit에 대한 출력을 찾습니다. **/test-reports/*. xml

0

나 그것이 작동하지 않습니다. Projekt의 Github Welcome Page 에도 XCTest가 지원되지 않는다고 언급되어 있습니다. xcpretty에

1) 파이프 당신 xcodebuild 출력과 자신의 JUnit 포맷을 사용 그래서이 이

3

두 가지 옵션을 지원하지 않은 것 같습니다. 그런 다음 젠킨스가이를 발표 할 수 있습니다.

B) xcodebuild 대신 xctool을 사용하십시오. Xctool에는 테스트를 위해 지정할 수있는 Junit 기자가 내장되어 있습니다.

우리는 모두 수행했으며 모두 Jenkins에서 잘 작동합니다.

+0

@piiluke jenkins를 사용하여 시뮬레이터를 시작할 수 없습니다. 당신은 그렇게 않았다 방법 ? –

+0

@HarishGupta 명령 줄 xcodebuild에는 테스트를 실행하는 데 필요한 모든 것이 있습니다. 어떤 이유로 든 시뮬레이터 자체를 (문맥없이) 시작하고 싶다면 쉘 스크립트 나 AppleScript를 사용하여 응용 프로그램을 실행하십시오. – plluke

+0

답장을 보내 주셔서 감사합니다 !! 내 테스트 케이스는 시뮬레이터가 실행되는 UI 테스트 케이스이다.그래서 젠킨스가 테스트 케이스를 실행하면 먼저 시뮬레이터를 시작해야합니다. –