Как запустить тесты GHUnit без нажатия кнопки «Выполнить»? - PullRequest
6 голосов
/ 04 апреля 2011

Я использую фреймворк GHUnit для тестирования статической библиотеки. В данный момент мне нужно нажать кнопку «Выполнить», чтобы начать тестирование. Но я хотел бы начать тестирование при запуске приложения, потому что мне нужно, чтобы teamcity запустил свое testApp. Итак, как я могу изменить стандартный интерфейс пользователя и запустить тесты автоматически?

Ответы [ 2 ]

2 голосов
/ 24 сентября 2012

Сделать продукт -> Редактировать схему… -> Аргументы -> Переменные среды, затем установить GHUNIT_AUTORUN в YES.

0 голосов
/ 04 июля 2011

Сделайте вашу цель модульного теста зависимой от вашего приложения, чтобы вы всегда создавали приложение перед модульными тестами.

Затем просто добавьте метод "setUp ()", чтобы запустить ваше приложение (и ждатьнеобходимо запустить), прежде чем продолжить.

  1. Убедитесь, что ваше приложение уже запущено:

    NSArray * apps = [[NSWorkspace sharedWorkspace] valueForKeyPath: @ "launchApplications.NSApplicationBundleIdentifier«];BOOL myAppIsRunning = [apps содержит объект: com.mycompany.myapp];

  2. Запустите ваше приложение (в setUP ()) и подождите:

    [[NSWorkspace sharedWorkspace] launchAppWithBundleIdentifier: com.mycompany.myapp параметры: NSWorkspaceLaunchWithoutActivation AdditionalEventParamDescriptor: NULL launchIdentifier: nil];while (! [self isRunning]) // см. выше {sleep (1);}

...