Вопрос

У меня есть 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 не может найти ваше приложение.

Попробуйте это сначала,

  1. Прокомментируйте определение App_Bundle_Path на Yourproject / houndse / support / 01_launch.rb, как #APP_BUNDLE_PATH = "~/..../../myApp-cal.app", поэтому Gem Calabash может найти приложение автоматически.
  2. Открыть консоль Перейти к папке проекта от нее. Затем введите gem install calabash-cucumber Это установит GEM Calabash GEM Onk, чтобы снова запустить, даже если вы установили его ранее, нет вреда. Затем введите calabash-ios setup в этом терминале, это создаст цель Calabash и добавьте каркас Calabash в ваш проект IOS. Более подробную информацию о процессе установки упоминается в здесь .
  3. Откройте файл проекта в редакторе Xcode (вы можете увидеть Calabash.framework, успешно добавленные в рамках вашего проекта.) Выберите цель Yourapp-Cal и симулятор, который вы хотите чистить, построить и запустить цель Yourapp-Cal ваш симулятор.
  4. затем остановите его и вернемся к этой консоли Enter Enter calabash-ios console Console запустит рубиновую консоль, которую вы можете работать с приложением. Теперь (хотя симулятор на вашем экране, но ваше приложение является Backbround на этом симуляторе) Тип start_test_server_in_background Ваше приложение должно прийти на передний план. Если это работает, Calabash может найти и запустить ваше приложение на симуляторе.
  5. запомнить, только если вы создаете приложение, построенное в отдельной папке, используя команду или скрипт XCodeBuild или Script или что-то, вот время установки переменных app_bundle_path.

Другие советы

Ответ Chathura работал на одном из моих коллег, но пара из нас пришлось найти другое решение.

Проблема для нас произошла после введения какоапод.В Xcode я открыл Организатор и заметил, что у нас есть производная папка данных для проекта BP (до PODS), а другая для рабочего пространства с помощью PODS.Я удалил полученную папку данных для проекта BP, а затем все работало.

Я повторно установил Calabash, прежде чем делать это, поэтому решение в моем случае, возможно, было сочетание ответа Chathura и моего.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top