1

プロジェクトに Pod として Calabash をインストールしました。gem 自体は bundler を使用してインストールされます。Calabash ターゲットに対して cucumber を実行しようとすると、最初の機能が開始されますが、ハングするだけで、シミュレーターが起動しません。

$ 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)"
}
4

2 に答える 2

5

わかりました、それはひょうたんがあなたのアプリを見つけられないことを意味します.

まずはこれを試して、

  1. YourProject/features/support/01_launch.rb の APP_BUNDLE_PATH 定義を次のようにコメントアウトします。ひょうたん#APP_BUNDLE_PATH = "~/..../../myApp-cal.app" gem はアプリを自動的に見つけることができます。
  2. コンソールを開き、そこからプロジェクト フォルダーに移動します。次に、gem install calabash-cucumberこれを入力すると、ひょうたんの宝石がインストールされます。以前にインストールした場合でも、再度実行しても問題ありません。次にcalabash-ios setup、そのターミナルに入ると、ひょうたんターゲットが作成され、ひょうたんフレームワークが iOS プロジェクトに追加されます。セットアップ プロセスの詳細については、こちらを参照してください。
  3. xcode エディターでプロジェクト ファイルを開きます (calabash.framework がプロジェクトのフレームワーク グループに正常に追加されていることがわかります)。yourApp-cal ターゲットとクリーンアップするシミュレーターを選択し、シミュレーターで yourApp-cal ターゲットをビルドして実行します。
  4. 次に、それを停止し、そのコンソールに戻ります。Enter console を入力するcalabash-ios consoleと、アプリを操作できる Ruby コンソールが起動します。今(シミュレーターが画面に表示されているが、アプリがそのシミュレーターでバックグラウンドになっている間)start_test_server_in_background、アプリをフォアグラウンドにする必要があると入力します。それが機能する場合、ひょうたんはシミュレーターでアプリを見つけて実行できます。
  5. xcodebuildコマンドまたはスクリプトなどを使用して別のフォルダーにアプリビルドを作成する場合にのみ、APP_BUNDLE_PATH変数を設定することを忘れないでください。
于 2014-06-08T08:03:45.817 に答える