2015-09-02 1 views
2

Мой модульного тестирования целевых аварий на Xcode 7.Модульное тестирование с назначенными аварий AppDelegate на XCode 7

я выполняю модульных тестов на мой проект с назначенным приложением класса делегата, отличный от моего регулярного приложения делегата. UnitTestAppDelegate не является участником приложения, а только для целевой цели.

В Xcode 6 он работает, используется правильный делегат, но в Xcode 7 (бета-версия 6) приложение вылетает при попытке загрузить для тестирования делегата. Я тест с использованием тренажеров, как IOS 8 и 9.

Файл не известны цели приложения:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Unable to instantiate the UIApplication delegate instance. No class named UnitTestAppDelegate is loaded.' 

Мой main.m файл выглядит следующим образом:

int main(int argc, char* argv[]) 
{ 
    int returnValue; 

    @autoreleasepool 
    { 
     if (NSClassFromString(@"XCTest") != nil) 
     { 
      //use the test delegate 
      returnValue = UIApplicationMain(argc, argv, nil, @"UnitTestAppDelegate"); 
     } 
     else 
     { 
      //use the normal delegate 
      returnValue = UIApplicationMain(argc, argv, nil, @"AppDelegate"); 
     } 
    } 

    return returnValue; 
} 

Я также добавив снимок экрана о том, как настроена моя схема (прогон и тест находятся в одной и той же схеме, хотя я также попытался их разделить).

enter image description here

Добавление моего UnitTestAppDelegate как член целевого приложения фиксирует сбой, но я, очевидно, не хотят, чтобы добавить файл в мое приложение.

Кто-нибудь еще столкнулся с этим?

Любые идеи?

+0

Я создал небольшой демонстрационный проект, если кто-то хочет, чтобы попытаться понять его. https://github.com/ashavit/UnitTests-Different-AppDelegate – AShavit

ответ