OCUnit: Как запустить тесты без запуска симулятора iPhone? - PullRequest
4 голосов
/ 29 мая 2011

Я следую Руководство по разработке iOS: приложения для модульного тестирования .Однако, когда я пытаюсь построить (Command + B) цель LogicTests (шаг 8 «Настройка логического тестирования»), я получаю сообщение об ошибке: «Выбранное назначение выполнения недопустимо для этого действия».

Поскольку я добавил цель своего приложения в целевые зависимости LogicTests, я могу запускать модульные тесты с помощью Command + U, но при этом также запускается iPhone Simulator.

Чтобы сэкономить время иресурсы, можно ли запустить тесты OCUnit (тесты логики и приложений) без запуска iPhone Simulator?

Ответы [ 4 ]

8 голосов
/ 27 июля 2011

Я понимаю раздражение симулятора, появляющегося при юнит-тестах. Лучшее средство, которое я смог найти, - это использовать Command + U, а затем Command + H при запуске модульных тестов. (Control + H скрывает симулятор после его появления.) Поскольку он появляется почти мгновенно, это может быть эффективным способом вывести его из вашего поля зрения.

4 голосов
/ 30 ноября 2011

Мне удалось запустить мои модульные тесты, которые тестируют классы моей модели без запуска симулятора следующим образом:

  1. Я не установил параметры загрузчика пакетов или сборки сборки тестового хоставместо этого я просто добавил .m файлы, которые я тестировал, в источники компиляции фаз сборки.

  2. Затем я запустил модульные тесты из командной строки, используя:

    xcodebuild -verbose -target TheElementsUnitTests -configuration Debug -sdk iphonesimulator5.0 clean build
    

Не совсем уверен, почему это не запустило симулятор, но это определенно не!

2 голосов
/ 21 сентября 2013

Вот небольшой AppleScript, который я настроил на Генерирует вывод в Тестирование Конфигурация поведения:

#!/usr/bin/osascript
activate application "Xcode"

Возвращает Xcode сразу после нажатия команда + U .

PS Я также открыл ошибку, и Apple пометил ее как дубликат.Итак, они знают.

1 голос
/ 01 июня 2011

Сколько времени / ресурсов? Вместо того, чтобы сосредоточиться на их сокращении, я бы сосредоточился на расширении ваших тестов, чтобы они выходили далеко за рамки первоначальных рекомендаций Apple «Логический тест». Эти рекомендации были ограничивающими и были написаны до Xcode 4. Теперь вы можете писать тесты, не задумываясь: «Это логический тест или тест приложения?» - просто проверь все.

...