Симулятор iOS не запускается с Calabash
-
21-12-2019 - |
Вопрос
У меня есть Calabash, установленный как POD в моем проекте.Сама GEM устанавливается с помощью Bundler.Когда я пытаюсь запустить огурец для моей цели Calabash, первые функции начинаются, но просто зависает, а симулятор никогда не запускается:
$ bundle exec cucumber
Feature: Ensure Login and Oauth Screen Functionality
Scenario: Verify Welcome Page # features/Sign_in.feature:3
.
Подробнее из моей установки:
# xcode installation location
$ xcode-select --print-path
/Applications/Xcode.app/Contents/Developer
# xcode version
$ xcodebuild -version
Xcode 5.1.1
Build version 5B1008
# calabash version
$ bundle exec calabash-ios version
0.9.168
# calabash < 0.9.169 or Xamarin IDE users
# start your app manually in the simulator or from Xcode and then launch a console
$ bundle exec calabash-ios console
> server_version
{
"outcome" => "SUCCESS",
"app_id" => "[REDACTED]",
"simulator_device" => "iPhone",
"version" => "0.9.168",
"app_name" => "[REDACTED]",
"iphone_app_emulated_on_ipad" => false,
"4inch" => true,
"git" => {
"remote_origin" => "git@github.com:jmoody/calabash-ios-server.git",
"branch" => "master",
"revision" => "adde106"
},
"app_version" => "2.0.1",
"iOS_version" => "7.1",
"system" => "x86_64",
"simulator" => "iPhone Simulator 463.9.41, iPhone OS 7.1 (iPhone Retina (4-inch)/11D167)"
}
. Решение
ОК, это означает, что Calabash не может найти ваше приложение.
Попробуйте это сначала,
- Прокомментируйте определение App_Bundle_Path на
Yourproject / houndse / support / 01_launch.rb, как
#APP_BUNDLE_PATH = "~/..../../myApp-cal.app"
, поэтому Gem Calabash может найти приложение автоматически. - Открыть консоль Перейти к папке проекта от нее. Затем введите
gem install calabash-cucumber
Это установит GEM Calabash GEM Onk, чтобы снова запустить, даже если вы установили его ранее, нет вреда. Затем введитеcalabash-ios setup
в этом терминале, это создаст цель Calabash и добавьте каркас Calabash в ваш проект IOS. Более подробную информацию о процессе установки упоминается в здесь . - Откройте файл проекта в редакторе Xcode (вы можете увидеть Calabash.framework, успешно добавленные в рамках вашего проекта.) Выберите цель Yourapp-Cal и симулятор, который вы хотите чистить, построить и запустить цель Yourapp-Cal ваш симулятор.
- затем остановите его и вернемся к этой консоли Enter Enter
calabash-ios console
Console запустит рубиновую консоль, которую вы можете работать с приложением. Теперь (хотя симулятор на вашем экране, но ваше приложение является Backbround на этом симуляторе) Типstart_test_server_in_background
Ваше приложение должно прийти на передний план. Если это работает, Calabash может найти и запустить ваше приложение на симуляторе. - запомнить, только если вы создаете приложение, построенное в отдельной папке, используя команду или скрипт XCodeBuild или Script или что-то, вот время установки переменных app_bundle_path.
Другие советы
Ответ Chathura работал на одном из моих коллег, но пара из нас пришлось найти другое решение.
Проблема для нас произошла после введения какоапод.В Xcode я открыл Организатор и заметил, что у нас есть производная папка данных для проекта BP (до PODS), а другая для рабочего пространства с помощью PODS.Я удалил полученную папку данных для проекта BP, а затем все работало.
Я повторно установил Calabash, прежде чем делать это, поэтому решение в моем случае, возможно, было сочетание ответа Chathura и моего.