Как автоматически выполнять модульные тесты для каждой сборки?

Как автоматически выполнять модульные тесты для каждой сборки?

Я попытался добавить целевую страницу Unit Tests в Project Target в качестве зависимости, но это, похоже, не запускает фактические тесты.

Ответы

Ответ 1

Установите для параметра "Настройка после сборки" значение "Да". Выберите "Продукт" > "Создать для" > "Сборка для тестирования", чтобы создать проект и запустить тесты.

Обновление Xcode 5

Xcode 5 не поддерживает настройку сборки после сборки. Я не знаю, как автоматически запускать тесты для каждой сборки в Xcode 5. В строке меню OS X выберите "Продукт" > "Тест" или нажмите "Command + u" для запуска модульных тестов в Xcode 5.

Ответ 2

Чтобы установить связь между вашими целями:

  • На вкладке "Выбор схемы" выберите "Изменить схему..."
  • Выберите этап тестирования
  • Убедитесь, что вы видите вкладку "Информация", а не вкладку "Аргументы"
  • Нажмите "+" и укажите цель тестирования
  • Вы должны увидеть список тестов. Нажмите "ОК"

Затем, чтобы запустить тесты, выберите "Продукт" > "Тест" или просто "⌘U" с клавиатуры. Это будет:

  • Создайте основную цель
  • Создайте тестовую цель.
  • Выполняйте свою основную цель в соответствии с ее типом, запуская тесты

Ответ 3

Вот что мне нужно было сделать, чтобы XCode 4 автоматически запускал модульные тесты при сборке.

  • Включите "Test After Build" для вашей основной цели. (См. Ответ Марка Шимчика)
  • Включить целевую аудиторию для запуска во время фазы сборки вашей основной схемы построения цели.
    • Нажмите Продукт > Управление схемами.
    • Дважды щелкните по вашей целевой схеме (у меня был только один в моем списке)
    • Развернуть аккордеон сборки слева
    • Выберите вариант сборки в аккордеоне
    • Вы должны увидеть, что вы тестируете проект справа, убедитесь, что флажок Запустить установлен..

Ответ 4

Я думал, что дам описание высокого уровня шагов, которые сработали для меня. (OS X 10.7.4, Xcode 4.3.3) Если вы не знакомы с такими вещами, как "Сборка фаз и схем", здесь отличный ресурс от Apple: http://developer.apple.com/library/ios/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/Building/Building.html

Для нового проекта убедитесь, что вы установите флажок "Включить измерения единиц измерения" на странице, где вы вводите имя нового проекта. Нажмите на значок проекта в Навигаторе проектов, чтобы увидеть две цели, которые были созданы автоматически. Их будут называть "MyCocoaApp" и "MyCocoaAppTests". Выберите цель MyCocoaAppTests (НЕ - MyCocoaApp!) И выберите "Настройки сборки" из вариантов в верхней части представления. Введите "тест после сборки" в строке поиска в верхней части окна. Вы должны увидеть одну настройку для "Test After Build" и по умолчанию установить значение "НЕТ". Нажмите кнопку "НЕТ" и измените ее на "ДА". Еще один шаг. Поднимите схему проекта. (Меню продукта → Изменить схему...) Выберите "Сборка" в столбце слева. Вы должны увидеть свои две цели и некоторые флажки справа. В строке "MyCocoaAppTests" установите флажок "Запустить" и нажмите "ОК". Все готово. Введите команду-B. Ваше приложение будет построено, модульные тесты будут построены, тесты модулей будут выполняться и завершаться ошибкой, которая есть по умолчанию.

Если вам нужно добавить модульное тестирование к существующему проекту, это немного более активно. Сначала следуйте этим инструкциям Apple: https://developer.apple.com/library/mac/#documentation/developertools/Conceptual/UnitTesting/02-Setting_Up_Unit_Tests_in_a_Project/setting_up.html#//apple_ref/doc/uid/TP40002143-CH3-SW1

Если вы не пропустите ни одного шага, вы должны теперь настроить модульные тесты, которые будут выполняться при выборе (Меню продукта → Тест). Теперь выполните два действия, описанные выше: 1) Установите для параметра "Test After Build" значение "YES" для цели MyCocoaAppTest; 2) Установите флажок "Запустить" для цели MyCocoaAppTest в разделе "Сборка" схемы для приложения. ПОСЛЕДНИЙ ШАГ: вы должны добавить новую фазу сборки "Запустить Script" в цель MyCocoaAppTest (не для MyCocoaApp!). Выберите целевую аудиторию, нажмите "Построить фазы", ​​нажмите "Добавить фазу сборки" в правом нижнем углу, выберите "Добавить запуск Script". Раздел "Запустить Script" откроется ниже остальных фаз сборки. Поле script содержит в себе этот текст: "Введите a script или перетащите файл script из вашей рабочей области". В этом поле введите: "$ {SYSTEM_DEVELOPER_DIR}/Инструменты/RunUnitTests". (Включая кавычки.)

Что это. Hit Command-B. Ваше приложение должно строить. Ваши тесты должны быть построены, а затем запущены. Удачи. Уф.