AWS Device Farm での Calabash テストの実行 - AWS Device Farm

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS Device Farm での Calabash テストの実行

Device Farm は、iOSとAndroidのテストのためのCalabashをサポートしています。Calabash を使用してアプリケーションをテストする Calabash を使用するサンプルテストスイートについては、Device Farm サンプルアプリ.

Calabash とは

Calabash は、自動化インターフェイス受け入れテストを実行するために使用できるモバイルテストフレームワークです。テストは、キュウリ記述言語とRubyで書かれています。

Device Farm では Calabash バージョン 0.20.5 をサポートしています。

Calabash テストを準備する

Calabash テストをDevice Farm に持ち込むには、次の構造で圧縮する必要があります。

  • というディレクトリfeatures、を含む

    • フィーチャ定義 (my-feature.feature)

    • というディレクトリstep_definitionsルビのステップ定義を含む

    • というディレクトリsupportルビサポートファイルを含む

    • その他のサポートファイル

AWS Device Farm に Calabash テストをアップロードする

Device Farm コンソールを使用してテストをアップロードします。

  1. Device Farm コンソール () にサインインします。https://console.aws.amazon.com/devicefarm

  2. Device Farmナビゲーションパネルで、モバイルデバイスのテスト、次に 選択するプロジェクト

  3. テスト実行を関連付けるプロジェクトを選択します。

    ヒント

    プロジェクトを作成するには、「AWS Device Farm でプロジェクトを作成する」の手順に従ってください。

  4. 選択作成a nEWr国連

  5. リポジトリの []選択アプリケーションページで [] を選択します。[ファイルの選択]

  6. アプリファイルを参照して選択します。このファイルは、iOS アプリケーションの.ipa ファイル、Android アプリケーションの.apk ファイルである必要があります。

    注記

    .ipa ファイルがシミュレーター用ではなく iOS デバイス用に作成されていることを確認します。

  7. [Next (次へ)] を選択します。

  8. リポジトリの []設定ページで,() テストフレームワークの設定セクションを開いて、] で、Calabash]、[] の順に選択します。[ファイルの選択]

  9. テストが含まれている .zip ファイルを参照して選択します。

  10. 選択次に、残りの画面上の指示を完了してテストを実行するデバイスを選択し、実行を開始します。

Android Calabash テストのスクリーンショットの取得

Android Calabash テストの一部としてスクリーンショットを撮ることができます。

Calabash は、スクリーンショットを取得するための一連の定義済みの手順を提供します。詳細については、の「スクリーンショット」セクションを参照してください。iOSの定義済みステップおよびAndroid の定義済みステップページで、GitHub の Calabash リポジトリーに記述します。

また、Ruby (.rb) ファイル内のカスタムステップを定義して screenshot_embed 関数を呼び出すこともできます。この関数では、スクリーンショットを作成して定義したディレクトリに保存します。次のコード例ではスクリーンショットを作成し、/my/custom/path ディレクトリに screenshot_seconds-since-Epoch のファイル名で保存します。

screenshot_embed(:prefix => "/my/custom/path", :name => "screenshot_#{Time.now.to_i}")

Calabash テストに関するその他の考慮事項

Device Farm は、デバイスファーム内のDevice Farm 上で Calabash テストを実行できるようにいくつかの Calabash フックを置き換えますが、テスト自体は変更されません。