KIF - интеграция с CI

С более ранней версией KIF я могу добавить заголовочный файл testcontroller в методе appDelegate didFinishLaunching, и мой 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

И мой делегат приложения будет,

#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 ответ

Решение

Вы должны выполнить цель тестирования приложения на сервере непрерывной интеграции. Например, в разделе "Решение" Настройка Jenkins CI для разработки iOS объясняется, как вы можете настроить pre Xcode 5 для выполнения тестов. В качестве альтернативы, посмотрите раздел "Запуск спецификаций киви из командной строки" непрерывной интеграции проектов iOS с использованием Jenkins, CocoaPods и Kiwi. Хотя они описывают решение для выполнения тестов Kiwi вместо тестов KIF, они в основном решают ту же проблему, а именно выполнение цели тестирования приложения с использованием Jenkins.

Другие вопросы по тегам