KIF - 与CI集成

时间:2013-09-13 22:27:24

标签: ios kif

使用早期的KIF,我可以在appdelegate的didFinishLaunching方法中添加testcontroller头文件,我的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

我的app代表就是,

#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(KIF-next)我不知道该怎么做,因为没有控制器文件。

有没有人如何在控制器中为新的KIF结构分组测试?

1 个答案:

答案 0 :(得分:3)

您必须在持续集成服务器上执行应用程序测试目标。例如,Setting Up Jenkins CI for iOS Development的“解决方案”部分解释了如何配置预Xcode 5以执行测试。或者,请查看Continuous Integration of iOS Projects using Jenkins, CocoaPods, and Kiwi中的“从命令行运行Kiwi规范”部分。虽然他们描述了执行Kiwi测试而不是kif测试的解决方案,但它们基本上解决了同样的问题,即使用Jenkins执行应用程序测试目标。