2015-06-06 4 views
1

Когда я бегуАвтоматически запускать тесты с каждой сборки в Xcode 6

xcodebuild -workspace ~/Documents/JudgecardXSwift/JudgecardXSwift.xcworkspace -scheme JudgecardXSwift -destination 'platform=iOS Simulator,name=iPhone 6' clean test 

из командной строки, я могу успешно запустить все мои тесты.

Теперь я хочу добавить этап сценария запуска к моему проекту Xcode, чтобы он всегда запускал мои тесты каждый раз при запуске приложения. Однако, когда я добавил этап запуска сценария с выше xcodebuild команды, моя сборка всегда висит:

enter image description here

и как вы можете видеть, он должен висеть на этапе запуска сценария я добавил, потому что он имеет только что закончил этап сборки, прежде чем она под названием Run custom shell script 'Copy Pods Resources':

enter image description here

мой метод добавления фазы сценария запуска с помощью команды xcodebuild правильный способ автоматического запуска тестов с каждым строить? Почему это приводит к зависанию процесса сборки? Является ли это причиной какого-то бесконечного цикла с каждой командой xcodebuild, которая запускает другую через свою фазу сценария запуска?

ответ

0

Бит поздно здесь, поэтому я подумал, что добавлю свой личный опыт, но xcodebuild начнет новую сборку для вас, важно xcodebuild через командную строку, поскольку вы можете не запускать свои фазы сборки, как ожидалось. У меня были только сильные команды неудачной копии, с теми, которые я мог просмотреть в файлах журналов, но на самом деле он не копировал файл.

Таким образом, он может попасть в бесконечный цикл, скорее всего, он работает через эту сборку, нажимая команду xcodebuild, а затем строя, как обычно, без каких-либо строковых фаз, выполняемых правильно и, таким образом, без запуска ваших тестов.

+0

любой способ запуска фаз сборки через 'xcodebuild'? –

0

В Xcode 9 это работает. Я добавил сценарий запуска:

echo "warning: Started running myTests " 

xcodebuild -sdk iphonesimulator -workspace myWorkspace.xcworkspace -scheme "myWorkspaceTests" test -destination 'platform=iOS Simulator,name=iPhone X,OS=11.2' CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO 

И если один из тестов завершился неудачно, вы получите ошибку построения.

Смежные вопросы