UFT One統合のセットアップ
このトピックでは、JenkinsまたはBambooを介してALM OctaneをUFT Oneと統合する方法について説明します。この統合により、ALM Octaneは、ソースコード管理 (SCM) リポジトリからのUFT Oneテストを実行可能な自動テストとして反映できるようになります。次に、これらのUFT Oneテストをテストスイートに含めて実行できます。
ALM Octane-UFT One統合フロー
UFT One統合がセットアップされると、CIサーバーとSCMシステムは透過的になり、UFT OneとALM Octaneを直接操作できます。
- テストとそのデータテーブルをUFT Oneで作成および編集し、GitまたはSVNリポジトリに保存します。
- テストを実行し、ALM Octaneで結果を追跡します。
ALM Octane-UFT One統合フローには次のものが含まれます。
-
セットアップ: 統合をセットアップするには、ALM Octane設定でCIサーバーとテストツール接続を作成します。この手順については、以下の各項で説明します。
-
ALM Octaneは、UFT Oneテストとデータテーブルを検出します。ALM Octaneは、リポジトリに保存されているGUIおよびAPIUFT Oneテストを表す自動テストエンティティを作成します。
ALM Octaneは、リポジトリの変更を定期的にチェックします。
-
テストをALM Octaneエンティティに関連付けます。テストをバックログモジュールとアプリケーションモジュールに関連付けます。これは、ALM Octaneでのテスト実行結果を使用して、製品とリリースの品質を追跡するのに役立ちます。
-
テストを実行します。テストスイートにテストを含めて、ALM Octaneからテストを計画および実行します。ALM Octaneは、CIサーバーを介してテストの実行をトリガーします。テストは、Jenkins実行ノードとして設定されたUFT Oneマシンで実行されます。
-
リリースおよびプロダクトの品質の分析: バックログ、品質、ダッシュボードモジュールの全体的なデータの一部として、UFT Oneのテスト結果を追跡します。
以下の画像は、この統合のアーキテクチャー (Jenkinsとの) を要約したものです。
統合をセットアップする前に
テストとデータテーブルをGitまたはSVNリポジトリに保存するようにUFT Oneを設定します。詳細については、UFT Oneヘルプセンターを参照してください。
注:
- UFT One-SCM統合は、UFT One12.50以降でサポートされています。
-
ALM Octaneがリポジトリ内のデータテーブルを見つけるには、テストとはまったく別のフォルダにデータテーブルを保存します。
CIサーバーで、ALM Octaneへの接続を設定します
ヒント: 専用のCIサーバーを持っていない場合で、ALM OctaneからUFT Oneのテスト実行をトリガーするために主に使用する軽量CIが必要な場合は、ALM Octaneクイックスタートガイドのための最小限のJenkinsのインストールを参照してください。
-
App Delivery Management Bamboo CIプラグインで設定されたBambooサーバーをセットアップします。これにより、BambooをUFT Oneと統合できます。
-
ALM Octane CIプラグインをインストールして設定し、BambooとALM Octaneを統合します。
[クライアントID] フィールドと [クライアントシークレット] フィールドに、ALM Octane設定から取得したAPIアクセスキーとシークレットを入力します。アクセスキーには、関連するすべてのワークスペースでCI/CD統合のロールを割り当てる必要があります。詳細については、ALM Octane CIプラグインのCIサーバーへのインストールと設定を参照してください。
-
SCMプラグインで設定されたJenkinsサーバーをセットアップします。
-
Jenkinsサーバーをインストールします。この統合用に完全なCIシステムを設定する必要はありません。下記の領域のみを設定します。
ALM Octane統合、ならびにALM Octane統合が必要ではないでサポートされているプラグインを可能にするために、Jenkinsサーバにインストールする必要がありますプラグインのリストについては、アプリケーション自動化ツールwikiページ参照。
-
Jenkins Gitプラグイン (バージョン2.4.4以降) またはSubversionプラグイン (バージョン2.5以降) をインストールして、 Jenkins-SCM統合を作成します。
-
-
アプリケーション自動化ツールプラグインをインストールします。
このプラグインは、ALM Octane-Jenkins統合をサポートし、JenkinsがUFT Oneテストを実行できるようにします。
テストが保存されている場合... このバージョンのプラグインを使用する Git
5.2以降 SVN 5.3.5 (ベータ) 以降 -
ALM Octaneに接続するようにプラグインを設定します。詳細については、ALM Octane CIプラグインのCIサーバーへのインストールと設定を参照してください。
ヒント: プラグインを構成する前に、スペース管理者からAPIアクセスクライアントIDとクライアントシークレットを取得してください。詳細については、APIアクセスのセットアップをご覧ください。
ALM Octaneでパイプラインを作成したり、Jenkinsでジョブを作成したりする必要はありません。
ただし、テストを実行するジョブを手動で作成し、テストがジョブワークスペースの外部にある場合は、ファイルシステムのリポジトリルートへのパスを使用してパラメーターUFT_CHECKOUT_FOLDERを定義します。これにより、ALM Octaneは、テストへのフルパスではなく、テスト名を表示できます。これは、プラグインバージョン6.7以降でサポートされています。
ALM Octaneで、CIサーバーを追加します
-
ALM Octaneで、[設定] > [スペース] をクリックしてワークスペースを選択します。
-
[DevOps] > [CIサーバー] タブを選択します。
-
CIサーバーを追加し、CIサーバーのURLを選択します。
詳細については、ALM OctaneにCIサーバーを追加するを参照してください。
ALM OctaneでUFTOneテストランナーを作成します
注: テストランナーフレームワークは、GUIタイプのUFT Oneテストでのみ外部データテーブルをサポートします (APIタイプはサポートしません)。
-
ALM Octaneで、設定>スペースをクリックして、ワークスペースを選択します。
-
DevOps > Test Runnersタブを選択します。
-
+テストランナーをクリックします。
-
ALM OctaneがUFT Oneテストの実行に使用するテストランナーエンティティに名前を付け、UFT Oneフレームワークを選択します。
-
CIサーバーを選択します。
このリストには、次の条件を満たすすべてのサーバーが表示されます。
-
サーバーには、ALM Octane CIプラグインがインストールされ、ALM Octaneにアクセスするように設定されています。
-
現在のワークスペースで、プラグインが使用するAPIアクセスキーにCI/CD統合ロールが割り当てられている。
-
-
UFT Oneテストとデータテーブルを含むSCMリポジトリのタイプとURLを指定します。
ワークスペースに複数のUFT Oneテストランナーを作成できますが、各テストランナーには個別のリポジトリが必要です。
-
必要に応じて、リポジトリの認証の詳細を提供します。
-
[接続テスト] をクリックして、設定が正しいことを確認します。
-
[保存して接続] をクリックして、接続を完成させます。
-
Bambooを介して統合する場合、ALM Octaneは2つのプランを作成します。リポジトリに接続してUFT Oneテストとデータテーブルを検出するUFT Oneテスト検出、およびテストを実行するUFT Oneテストエグゼキュータ。
-
Jenkinsを介して統合している場合、ALM Octaneは、リポジトリに接続し、UFT Oneテストとデータテーブルを検出するJenkinsジョブを作成します。
ヒント: トラブルシューティングに必要な場合は、接続IDに基づいてCIサーバーでこのジョブを見つけることができます。
テストの実行を有効にするには、CIサーバーがUFT Oneテストの実行をトリガーできるようにするを参照してください。
テストスクリプトとデータテーブルの内容は、UFT Oneでのみ利用できます。
[テスト] タブには何が表示されますか?
ALM Octaneの自動テストエンティティでは、次のフィールドが設定されています。
-
テストツールタイプ=UFT One
-
テストタイプ = APIまたはUI
-
実行可能 = はい。これらのテストは、テストスイートに追加して、ALM Octaneから実行できます。
ALM Octaneの [テスト] タブに期待されるすべてのテストが表示されない場合は、テストのリストを更新してみてください。
UFT Oneでテストを変更するとどうなりますか?
ALM Octaneは引き続き定期的にリポジトリをチェックし、そのエンティティを次のように更新します。
-
UFT Oneに新しいテストを追加するか、既存のテストを変更すると、変更はALM Octaneに反映されます。
-
UFT Oneからテストを削除すると、ALM Octaneの関連するテストは削除されませんが、実行可能としてマークされます。このため、テストとテストの履歴、実行、およびレポートはそのまま利用できます。
-
GITでUFT Oneテストの名前を変更した場合、ALM Octaneバージョンが12.60.3以降の場合、テストはALM Octaneで名前が変更されます。追加の変更なしでコミットされました。
-
SVNでUFT Oneテストの名前を変更した場合、またはGITで名前を変更して上記の条件を満たさなかった場合、ALM Octaneで新しいテストが作成され、元のテストにマークが付けられます。実行可能ではない
ALM OctaneからUFT Oneの自動テストへのリンク
ALM Octaneは、UFT One自動テストからSCMの対応するテストに直接ドリルするために使用できるリンクを作成できます。
-
上記のように、UFT Oneテストランナーを作成します。
-
リポジトリビューアーへのリンクの有効化 (GitまたはSVNのみ)の説明に従って、ブランチテンプレートでSCMリポジトリを指すファイルを定義します。
-
テストランナーがUFT One自動テストを発見すると、ALM Octaneのテスト詳細にSCMテストリンクフィールドが含まれます。リンクをクリックして、ブランチテンプレートのファイルで設定したテンプレートに基づいて、リポジトリ内のUFTテストに移動します。
CIサーバーがUFT Oneテスト実行をトリガーできるようにします
BambooがUFTOneテストを実行できるようにする
-
サーバーの [セキュリティとアクセス許可] オプションで、Bambooサーバーでテストを実行する前に [XSRF保護を有効にする] オプションをオフにします。
-
プラグインのユーザーガイド > インストールセクションの説明に従って、エージェントを有効にします。
BambooのUFT Oneテストエグゼキュータープランには、BambooがトリガーするALM Octaneからテストのリストを受け取るパラメーターtestsToRunが含まれていることに注意してください。(これは統合によって自動的に作成されます。)
UFT Oneがテストを実行できることを確認してください
-
UFT Oneが開くと、テストに必要なすべてのアドインをロードする必要があります。
-
UFT Oneマシンは、テスト対象のアプリケーションにアクセスできる必要があります。
UFT Oneがテストを実行できることを確認してください
-
UFT Oneが開くと、テストに必要なすべてのアドインをロードする必要があります。
-
UFT Oneマシンは、テスト対象のアプリケーションにアクセスできる必要があります。
UFT Oneを設定して、切断されたリモート接続でテストを実行できるようにします
この構成は、実行ノードを使用してUFT Oneテストを実行する場合に必要です。この構成がないと、ALM Octaneによってトリガーされたテスト実行は、誰かが直接またはリモートデスクトップ接続を使用して実行ノードにログインするまで、Jenkinsで保留中のままになります。
設定するには、次の手順を実行します。
-
[UFT Oneオプション] ダイアログボックスで、[セッションの実行] ペインを開きます (ツール >オプション >一般的なタブ >セッションの実行ノード)。
-
RDPコンピューターから切断した後もUFT OneがGUIまたはビジネスプロセステストの実行を続行できるようにするを選択します。
-
UFT Oneマシンにログインできるユーザーのユーザー名とパスワードを入力します。
JenkinsをUFT Oneマシンに接続します
-
Jenkinsサーバーで、UFT Oneマシンを実行ノードとして定義します。Jenkinsはこれらのノードを使用して、ALM OctaneがトリガーするUFT Oneテストを実行します。
実行ノードの名前に、文字列uftが含まれていることを確認します。
-
UFT Oneマシンで、実行ノードをJenkinsサーバーに接続します。
ブラウザーでJenkinsサーバーのURLを開き、[Manage Jenkins] > [Manage Node] に移動します。
ノードを選択し、起動をクリックしてサーバーから実行ノードにエージェントプログラムをダウンロードし、そのプログラムをUFT Oneマシンで実行します。
詳細については、アプリケーション自動化ツール wikiページの実行ノードに関するセクションを参照してください。
注: JenkinsサーバーがWindowsマシンにインストールされている場合は、実行ノードを作成する代わりに、同じマシンにUFT Oneをインストールできます。
UFT One APIテストの実行を有効にするようにJenkinsを設定します
14.01より前のUFT Oneバージョンを使用している場合に関連します。
APIテストを実行するには、ALM Octaneには、UFT Oneが最初に実行したときに生成するScript.dllファイルとScript.pdbファイルが必要です。テスト。
標準設定では、これらのファイルはSCMリポジトリに保存されません。
これらのファイルを ALM Octane で利用できるようにするには:
-
UFT OneでAPIテストを実行して、ファイルを生成します。
-
Script.dllとScript.pdbが無視されないようにSCM定義を調整します。
-
UFT Oneからテストをプッシュ (Git) またはコミット (SVN) して、ファイルをリポジトリに保存します。
-
Script.dllファイルとScript.pdpファイルがリポジトリにあることを確認します。
ALM OctaneからのUFT Oneテスト結果を開くことができるようにJenkinsを設定します
標準設定では、JenkinsのContent-Security-Policyヘッダーは、UFT Oneテスト結果レポートをリモートで表示できないようにします。
自動テストでJenkinsで表示ボタンを使用して、ALM OctaneからUFT Oneレポートを開くことができるようにするには、CSPプロパティをクリアする必要があります。
次のいずれかの回避策を実行します。
-
Jenkinsサーバーが再起動されるまで、このプロパティを一時的にクリアします。
Jenkinsで、[Manage Jenkins] > [Script Console] を開いて、以下を実行します。
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")
-
次の手順で、このプロパティを恒久的にクリアします。
JAVA_OPTSオプションを指定してJenkinsを実行し、次のオプションを追加します。
-Dhudson.model.DirectoryBrowserSupport.CSP=
次のステップ