Digital Lab と Jenkins との統合

製品ビルド・プロセスの一環として、Jenkins 継続的インテグレーション・サーバからモバイル・テストとクラウド・ブラウザ・テストを直接実行します。

Jenkins のセットアップと Digital Lab への接続

Jenkins からモバイル・デバイスまたはクラウド・ブラウザでテストを実行するには、Jenkins プラグインをセットアップして Digital Lab に接続します。

Digital Lab への Jenkins 接続をセットアップするには、次の手順を実行します。

  1. Jenkins と OpenText Application Automation Tools プラグインをインストールします。詳細については、Jenkins プラグインのページを参照してください。
  2. Jenkins サーバのホームページで、[Manage Jenkins]>[Configure System]をクリックします。

  3. Digital Lab]セクションで、[Add Digital Lab server]をクリックします。

  4. 使用する Digital Lab サーバのわかりやすい名前と URL を入力します。

  5. アクセスする Digital Lab サーバごとに、最後の 2 つのステップを繰り返します。

  6. OpenText Functional Testing と Jenkins が別々のマシンでホストされている場合は、機能テストの実行ノードを作成します。

  7. Apply]または[Save]をクリックして、変更を保持します。

SSL を使用した接続

SSL を使用して Digital Lab に接続するには、ジョブの設定ページで[Use SSL]を選択します。

CA 証明書を使用する場合は、最初に Jenkins マシンに証明書をインストールする必要があります。詳細については、Jenkins マシンへの CA 証明書のインストールを参照してください。

モバイル・アプリのアップロード

Jenkins を使用してアプリを Digital Lab にアップロードする方法の詳細については、Digital Lab ヘルプを参照してください。

先頭に戻る

Jenkins サーバでの Digital Lab サーバの資格情報の定義

モバイル・デバイスまたはクラウド・ブラウザでテストを実行する際に Jenkins が Digital Lab サーバに接続するために使用する資格情報を定義します。

次の表では、使用している OpenText Application Automation Tools プラグインのバージョンに応じて、資格情報をどこで定義するかを示しています。

プラグイン・バージョン 資格情報
7.4 より前

モバイル・テストを実行する各ジョブで、ユーザ名とパスワードを入力します。

7.4 以降

Digital Lab サーバの要件に応じて、モバイル・テストを実行する各ジョブで、ユーザ名とパスワード、またはアクセス・キーのどちらかを定義します。

先頭に戻る

Jenkins からのモバイル・テストの実行

Jenkins と Digital Lab の両方を使用してモバイル・デバイスでテストを実行します。

Jenkins からモバイル・テストを実行するには、次の手順を実行します。 

  1. Jenkins サーバのホームページで、[New Item]をクリックするか、既存のアイテムをクリックします。

    新しいアイテムの作成を選択した場合、アイテム名を入力します。

  2. Build a free style project]を選択して、[OK]をクリックします。

  3. General]タブで、[Build]セクションまでスクロールします。

  4. Add build step]ドロップダウンを展開し、[Execute OpenText tests from file system]を選択します。

  5. Digital Lab options]をクリックし、Digital Lab の詳細を入力して、テストの設定を定義します。

    1. ドロップダウン・リストから Digital Lab サーバを選択します。

    2. 利用可能な場合は、[Use Device Lab]オプションを選択します。

    3. Wizard]ボタンをクリックします。

    4. ユーザの資格情報を入力し、Digital Lab サーバに接続します。

      ユーザ資格情報は、ユーザ名とパスワード、またはアクセス・キーのどちらかです。詳細については、Jenkins サーバでの Digital Lab サーバの資格情報の定義を参照してください。

      注: ワークスペースが有効になっている場合は、username#ID の形式でユーザ名に 9 桁のテナント ID を含める必要があります(例:admin@default.com#999999999)。

      詳細については、Digital Lab ヘルプを参照してください。

    5. Digital Lab にログインします。

    6. ウィザードで、デバイスとアプリを選択して、テストを設定します。[保存して閉じる]をクリックします。

  6. Tests]ボックスに、完全な絶対パスを使用してテストを入力するか、1 つ以上のテストを含むフォルダまたは MTB を入力します。

    複数のエントリを指定するには、フィールドの右側にある下矢印をクリックし、各テスト・パスを別々の行に入力します。それらのパスがローカル・ネットワークのすべてのマシンからアクセスできることを確認します。

    ヒント: 別の方法として、テストとそのパラメータのリストを含むバッチ・ファイルを示すこともできます。詳細については、バッチ・ファイルを使用した複数のテストの指定を参照してください。

  7. オプション設定:

    UFT parallel running mode

    複数の環境でテストを実行する場合に選択します。

    次に、必要に応じて新しいテストと環境のフィールドを追加します。Digital Lab ウィザードを使用して、定義された各テストの環境を定義します。

    :並列テストが設定されている場合、Digital Lab ウィザードで定義した環境(上記を参照)は、テストの実行中に無視されます。

    詳細については、複数の環境でのテストの並列実行を参照してください。

    Timeout タイムアウトを秒単位で示します。この時間が経過すると、ジョブは失敗します。
    Run Mode

    テストの OpenText Functional Testing 実行モードを定義します。

    1. UFT-specific settings]を選択します。
    2. Run Mode]ドロップダウン・リストから、[Fast]または[Debug]を選択します。

    詳細については、[テスト実行]表示枠([オプション]ダイアログ・ボックス>[GUI テスト]タブ)を参照してください。

  8. Apply]をクリックして変更を保存し、ビルド・ステップの追加を続けます。ビルド・ステップの追加が完了したら、[Save]をクリックします。
  9. ビルド後のアクションを追加して、OpenText Functional Testing テスト結果の設定を定義します。

    [Post-build Actions]セクション:

    1. Add post-build action]をクリックし、[Publish OpenText test result]を選択します。
    2. Always archive OpenText test reports]を選択します。
  10. 標準の Jenkins ジョブの場合と同じように、ジョブを実行したり、スケジュールを設定したりします。

    テストが完了したら、テスト実行結果の確認に進みます。

ヒント: トラブルシューティングを行うには、Digital Lab サーバのログ・ファイルで、接続の問題やセキュリティの問題がないかを確認します。

バッチ・ファイルを使用した複数のテストの指定

バッチ・ファイルでテストとパラメータを指定して、複数のテストをトリガするように Jenkins ジョブを設定します。

複数のテストを指定するか、毎回パラメータを変えて同じテストを複数回指定します。テストのパスを指定する際は、パス名として Jenkins の環境変数がサポートされます。

バッチ・ファイルに .mtbx という拡張子を付けます。以下は、構文の例です。

<Mtbx>
 <Test name="test1" path="c:\tests\APITest1">
 <Parameter name="A" value="abc" type="string"/>
 ….
 </Test>
 <Test name="test2" path="${WORKSPACE}\test2">
  <Parameter name="p1" value="123" type="int"/>
  <Parameter name="p4" value="123.4" type="float"/>
  ….
 </Test>
</Mtbx>

バッチ・テスト実行でテスト間でパラメータを渡す

OpenText Application Automation Tools プラグイン・バージョン 7.6 以降でサポート

あるテストの出力パラメータを別のテストの入力パラメータとして渡すことができます。

テスト間でパラメータを渡すには、次の手順を実行します。

  1. OpenText Functional Testingで、各テストで後続のテストの入力として使用する出力パラメータを定義します。

  2. バッチ・ファイルの各 <Parameter> 要素で、値を空のままにして、値を使用する出力パラメータの名前を指定する source 属性を含めることができます。

    例:

    <Test name="test2" path="c:\tests\GUITest1">
    <Parameter name="inputParam1" value="" type="string" source="outParam1"/>
    …
    </Test>

注:  

  • バッチ・テスト実行で最初のテストを指定する場合は、source 属性を空のままにします。

  • テスト・バッチに 3 つのテスト(A、B、C)がある場合、パラメータを A から C に直接渡すことはできません。

先頭に戻る

異なるデバイスにわたる Jenkins ジョブの順次実行

同じ OpenText Functional Testing マシンで、異なるデバイスを使用して、連続する複数の Jenkins ジョブを実行します。

複数の Jenkins ジョブを順番に実行するには、次の手順を実行します。

  1. 異なるデバイスを使用して複数のジョブを設定します。

  2. 2 番目のジョブでは、Jenkins の設定ページを参照し、[Build Triggers]セクションを見つけます。([Manage Jenkins]>[Configure System]

  3. Build after other projects are built]オプションを選択し、[Projects to watch]フィールドに最初のジョブ名を入力します。

  4. 必要に応じて、[Trigger only if build is stable]を選択します。

  5. Apply]をクリックして変更を保存し、ビルド・ステップの追加を続けます。

    ビルド・ステップの追加が完了したら、[Save]をクリックします。

先頭に戻る

異なるデバイスを使用した異なる Jenkins ジョブの並列実行

異なるエージェント・マシン上にある異なるデバイスを使用して、異なる Jenkins ジョブを並行して実行します。

複数の Jenkins ジョブを並列実行するには、次の手順を実行します。

  1. エージェント・マシンをセットアップし、OpenText Functional Testing がそれぞれのマシンにインストールされていることを確認します。

    詳細については、Jenkins ドキュメントの「Using Jenkins agents」を参照してください。

  2. [Manage Jenkins]>[Manage Nodes]を選択し、[Configure]アイコンをクリックして、設定ページ・ノードを開きます。

  3. Labels]フィールドにラベルを入力します。

    エージェントごとに異なるラベルを持つようにしてください。前の手順でエージェントに割り当てられた値を使用することもできます。

  4. 各ジョブの設定ページを開き、[Restrict where this project can be run]を選択します。

  5. Label Expression]に、前に定義したラベルを入力します。

  6. 変更内容を保存します。

先頭に戻る

Jenkins からのクラウド・ブラウザ上での Web テストの実行

OpenText Application Automation Tools プラグイン・バージョン 24.1.0 以降でサポート

Jenkins と Digital Lab の両方を使用してクラウド・ブラウザで Web テストを実行します。

Jenkins からクラウド・ブラウザで Web テストを実行するには、次の手順を実行します。 

  1. Jenkins サーバのホームページで、[New Item]をクリックするか、既存のアイテムをクリックします。

    新しいアイテムの作成を選択した場合、アイテム名を入力します。

  2. Build a free style project]を選択して、[OK]をクリックします。

  3. General]タブで、[Build]セクションまでスクロールします。

  4. Add build step]ドロップダウンを展開し、[Execute OpenText tests from file system]を選択します。

  5. Digital Lab options]をクリックし、Digital Lab の詳細を入力して、テストの設定を定義します。

    タスクで定義した設定は、OpenText Functional Testing の[記録と実行環境設定]で定義された設定よりも優先されます。Jenkins で指定していない設定については、[記録と実行環境設定]が使用されます。

    1. ドロップダウン・リストから Digital Lab サーバを選択します。

    2. Use Cloud Browser Lab]オプションを選択します。

    3. テストするアプリケーションの URL を入力します。

    4. Browser settings]をクリックします。ダイアログ・ボックスが開き、Digital Labで利用可能なクラウド・ブラウザに基づいて、テストを実行するブラウザを記述できます。

    5. オペレーティング・システムブラウザの種類バージョン、および地理的な場所を選択して、ブラウザを選択します。

      特定のバージョンまたは次のいずれかを選択できます。

      • latest:Digital Lab サーバでサポートされている最新バージョン。

      • latest-1:Digital Lab サーバでサポートされている 2 番目に新しいバージョン。

      • latest-2:Digital Lab サーバでサポートされている 3 番目に新しいバージョン。

      サポートされているバージョンのリストについては、Digital Lab サポート・マトリクス」を参照してください。

    6. SAVE]をクリックします。指定したブラウザの詳細は、Jenkins ジョブの読み取り専用フィールドに表示されます。

  6. Tests]ボックスに、完全な絶対パスを使用してテストを入力するか、1 つ以上のテストを含むフォルダまたは MTB を入力します。

    複数のエントリを指定するには、フィールドの右側にある下矢印をクリックし、各テスト・パスを別々の行に入力します。それらのパスがローカル・ネットワークのすべてのマシンからアクセスできることを確認します。

    ヒント: 別の方法として、テストとそのパラメータのリストを含むバッチ・ファイルを示すこともできます。詳細については、バッチ・ファイルを使用した複数のテストの指定を参照してください。

  7. オプション設定:

    Timeoutタイムアウトを秒単位で示します。この時間が経過すると、ジョブは失敗します。
    Run Mode

    テストの OpenText Functional Testing 実行モードを定義します。

    1. UFT-specific settings]を選択します。
    2. Run Mode]ドロップダウン・リストから、[Fast]または[Debug]を選択します。

    詳細については、[テスト実行]表示枠([オプション]ダイアログ・ボックス>[GUI テスト]タブ)を参照してください。

  8. Apply]をクリックして変更を保存し、ビルド・ステップの追加を続けます。ビルド・ステップの追加が完了したら、[Save]をクリックします。
  9. ビルド後のアクションを追加して、OpenText Functional Testing テスト結果の設定を定義します。

    [Post-build Actions]セクション:

    1. Add post-build action]をクリックし、[Publish OpenText test result]を選択します。
    2. Always archive OpenText test reports]を選択します。
  10. 標準の Jenkins ジョブの場合と同じように、ジョブを実行したり、スケジュールを設定したりします。

    テストが完了したら、テスト実行結果の確認に進みます。

ヒント: トラブルシューティングを行うには、Digital Lab サーバのログ・ファイルで、接続の問題やセキュリティの問題がないかを確認します。

先頭に戻る

その他の参照項目: