Я нашел инструмент командной строки под названием «xctest», который, по-видимому, может запускать модульные тесты в вашем проекте. Этот исполняемый файл живет здесь:Как запустить xctest из командной строки с помощью Xcode 5?
/Applications/Xcode.app/Contents/Developer/usr/bin/xctest
Когда я пытаюсь запустить этот исполняемый файл на моем xctest расслоении, я использую:
$ ./xctest /Users/myusername/Library/Developer/Xcode/DerivedData/MyApp-abcdefghijklmnop/Build/Products/Debug/MyAppTests.xctest
Однако я получаю следующий результат:
Test Suite '(null)' started at 2013-11-14 21:16:45 +0000
Test Suite '(null)' finished at 2013-11-14 21:16:45 +0000.
Executed 0 tests, with 0 failures (0 unexpected) in 0.000 (0.001) seconds
Нет никакой страницы для xctest, насколько я могу судить, но ввод только ./xctest в командной строке дает:
Usage: xctest [--test Self | All | None | <TestCaseClassName/testMethodName>] <path of unit to be tested>
В частности, я хотел бы иметь возможность протестировать только определенный метод в тестовом классе, поэтому я хотел бы использовать эту команду xctest.
Я вижу, что есть способ запустить все тесты из командной строки, например:
$ xcodebuild test -scheme MyApp
Это запускает все модульные тесты и работает должным образом (я вижу, мои результаты испытаний единицы, в отличие при использовании xctest). Но я заинтересован в возможности запустить один тестовый метод из командной строки, например:
$ ./xctest --test MyAppTests/testExample /Users/myusername/Library/Developer/Xcode/DerivedData/MyApp-abcdefghijklmnop/Build/Products/Debug/MyAppTests.xctest
Спасибо! Мне не нужно было устанавливать переменные среды для DYLD_FRAMEWORK_PATH и DYLD_LIBRARY_PATH. Мне нужно было убедиться, что у меня есть правильное место размещения xctest в Build/Products/Testing, а не Build/Products/Debug. Таким образом, мой путь был следующим: ./xctest -XCTest MyTestClass/testMyTestFunction /Users/username/Library/Developer/Xcode/DerivedData/MyApp-abcdefghikjklmn/Build/Products/Testing/MyAppTests.xctest –
Спасибо за отзыв об отключении тестов в схема. Вы можете выбрать несколько строк и использовать пробел для переключения выбора - очень полезно! – funroll