У меня есть две схемы (скажем, A & B) в моем проекте.Я хочу протестировать оба устройства с одинаковым устройством и версией одновременно.
Я попробовал инструмент xcodebuild, и он отлично работает, если я запускаю схемы отдельно.
xcodebuild -scheme "A" -destination 'platform=iOS Simulator,name=iPhone7Plus,OS=12.1' build test CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
xcodebuild -scheme "B" -destination 'platform=iOS Simulator,name=iPhone7Plus,OS=12.1' build test CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
Приведенные выше строки будут запускать мои тесты, если они вызывались отдельно один за другим.Но если я вызываю их параллельно через терминал, тесты со схемой B всегда терпят неудачу.
Возможно, причина в том, что я не могу использовать параллель экземпляра одного симулятора (я не уверен).Итак, я создал другой симулятор с той же версией, но с другим именем (AnotheriPhone7Plus
).
xcodebuild -scheme "A" -destination 'platform=iOS Simulator,name=iPhone7Plus,OS=12.1' build test CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
xcodebuild -scheme "B" -destination 'platform=iOS Simulator,name=AnotheriPhone7Plus,OS=12.1' build test CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO
Теперь, вызов двух параллельных строк в сценарии терминала запускает мои тесты успешно !!
Проблема решена.Но мой вопрос заключается в том, должен ли я клонировать симулятор N раз для запуска нескольких (N раз) схем одновременно?Есть ли способ запустить несколько схем в одном симуляторе параллельно?