2013-09-13 2 views
2

이전 KIF에서는 appdelegate의 didFinishLaunching 메소드에 testcontroller 헤더 파일을 추가 할 수 있으며 CI가 작동합니다.KIF - CI와 통합

testcontroller.h

#import <Foundation/Foundation.h> 
#import "KIFTestController.h" 

@interface testcontroller : KIFTestController 

@end 

testcontroller.m

#import "KIFTestScenario.h" 

@implementation testcontroller 

- (void)initializeScenarios; 
{ 
    [self addScenario:[KIFTestScenario scenarioToTest]]; 
} 

@end 

그리고 내 응용 프로그램의 대리인이 될 것이다, 새로운 KIF (KIF-다음)와

#ifdef RUN_KIF_TESTS 
//DebugLog(@"%d",testsAreRunning); 
if (!testsAreRunning){ 
    //DebugLog(@"Run KIF Tests"); 
    [[testcontroller sharedInstance] startTestingWithCompletionBlock:^{ 
     // Exit after the tests complete so that CI knows we're done 
     exit([[testcontroller sharedInstance] failureCount]); 
    }]; 
    testsAreRunning=YES; 
} 

#endif 

난 몰라 컨트롤러 파일이 없으므로이를 수행하는 방법을 알고 있어야합니다.

새로운 KIF 구조의 컨트롤러에서 테스트를 그룹화하는 방법은 누구입니까?

+0

github 프로젝트 (https://github.com/kif-framework/KIF)의 README를 확인 했습니까? KIF 테스트 타겟의 기본 설정을 설명하고 예제를 제시합니다. README를 이미 확인했다면 누락 된 정보는 무엇입니까? –

+0

나는 그것을 읽었다 (https://github.com/kif-framework/KIF/blob/master/README.md#continuous-integration). 그것은 xcode 5 (나는 아직 가지고 있지 않음)를 사용하는 것이 쉽다고 말합니다. 그리고 그것을하는 방법에 대해서는 아무 말도하지 않습니다. 예제가 있다면 나와 공유하십시오. – Raj

+0

Xcode 5가 필요하지 않습니다. 해당 문서의 "테스트 대상 만들기"섹션에서 설명한대로 테스트 대상을 프로젝트에 추가해야합니다. 그런 다음 "예제"섹션에서 설명한대로 KIFTestCase의 하위 클래스를 정의해야합니다. –

답변

3

응용 프로그램 테스트 대상은 연속 통합 서버에서 실행해야합니다. 예를 들어 Setting Up Jenkins CI for iOS Development의 "The Solution"섹션에서는 테스트를 실행하기 위해 pre Xcode 5를 구성하는 방법을 설명합니다. 또는 "명령 줄에서 Kiwi 사양 실행"섹션 Continuous Integration of iOS Projects using Jenkins, CocoaPods, and Kiwi을 살펴보십시오. kif 테스트 대신 Kiwi 테스트를 실행하는 솔루션을 설명하지만 기본적으로 동일한 문제를 해결합니다. 즉 Jenkins를 사용하여 응용 프로그램 테스트 대상을 실행합니다.

+0

고마워요! 지금은 젠킨스에서 작동합니다. – Raj

관련 문제