オブジェクト・リポジトリの作成
この実習では、アプリのユーザ・インタフェースのテストに使用されるテスト・オブジェクトのコレクションであるオブジェクト・リポジトリを作成する方法について説明します。
UFT One の記録と実行環境設定の定義
MyFlight アプリケーションのオブジェクトを WPF テスト・オブジェクトとして学習するように UFT One を設定します。
次の手順を実行します。
-
UFT One で MyFlight ソリューションとテストを開いた状態から始めます。詳細については、「テストの計画とソリューションの作成」および「GUI テストの作成と実行」を参照してください。
-
UFT One の記録と実行環境設定を設定して、UFT One がアプリ内のオブジェクトを学習する方法を定義します。
-
[記録]>[記録と実行環境設定]を選択します。
-
[指定したアプリケーションだけで記録して実行する: UFT One によって開かれたアプリケーション]および[次の指定アプリケーション]を選択します。
-
[追加]ボタンをクリックし、次の場所にある FlightsGUI.exe ファイルを参照します。<UFT One インストール・フォルダ>\samples\Flights Application\FlightsGUI.exe
[アプリケーションの詳細]ダイアログ・ボックスの他のオプションは、標準設定値のままにしておきます。
-
-
[OK]をクリックして、[記録と実行環境設定]ダイアログ・ボックスに戻ります。
-
もう一度[OK]をクリックして、メインの UFT One ウィンドウに戻ります。
「MyFlight アプリケーションのオブジェクトのスパイ」に進んでください。
MyFlight アプリケーションのオブジェクトのスパイ
MyFlight アプリケーションの一部のオブジェクトで使用できるプロパティと操作をスパイします。
次の手順を実行します。
-
MyFlight サンプル・アプリを開きます。
すでに開いている場合は、閉じてから再度開いて、UFT One で正しく認識されるようにします。詳細については、「サンプルの MyFlight アプリケーションの探索」を参照してください。
-
UFT One で、[オブジェクト認識センター]ツールバー・ボタンの近くにある下矢印をクリックし、[オブジェクト スパイ]を選択します。
UFT One 15.0.1 以前:[オブジェクト スパイ]ツールバー・ボタンをクリックします。
-
[オブジェクト スパイ]ダイアログ・ボックスを横にドラッグし、[スパイの実行中にオブジェクト スパイを常に手前に表示]が有効になっていることを確認します。
-
[オブジェクト スパイ]で指差しボタンをクリックして、スパイを開始します。MyFlight アプリをスパイできるように、UFT One ウィンドウは非表示になっています。
通常の Windows カーソルへの切り替えオブジェクト・スパイと他のアプリを切り替えるときは、CTRL を押して、指差しアイコンを通常の Windows カーソルに変更します。
Windows カーソルが必要な間は CTRL ボタンを押したままにし、離すとオブジェクト・スパイの指差しアイコンに戻ります。
-
マウスのカーソルを MyFlight アプリのさまざまなオブジェクトの上に移動し、[オブジェクト スパイ]ダイアログ・ボックス内でプロパティや値がどのように変化するかを確認します。
少し場所がずれているUFT One が正しい場所でオブジェクトを認識していないと思われる場合は、Windows のディスプレイ設定が 100%に設定されていることを確認してください。
設定されていない場合は、UFT One が正しく認識するために、アプリ内の実際のオブジェクトの少し横にある領域をクリックまたは選択する必要がある場合があります。
-
オブジェクト・スパイの指差しアイコンを使用して、MyFlight の[ユーザ名]エディット・ボックスをクリックします。
[オブジェクト スパイ]ダイアログ・ボックスの内容が変更されます。オブジェクトの階層構造には、agentName という名前の WpfEdit テスト・オブジェクトが表示されます。
- [閉じる]をクリックして、オブジェクト・スパイを閉じます。
オブジェクト・リポジトリへの特定のオブジェクトの追加
テストに必要な特定のオブジェクトを 1 つずつオブジェクト・リポジトリに追加します。
次の手順を実行します。
-
UFT One で、[リソース]>[オブジェクト リポジトリ マネージャ]を選択します。オブジェクト・リポジトリ・マネージャを使用して、テストに関連付けられたオブジェクト・リポジトリを管理し、使用するテスト・オブジェクトを含めることができます。
-
[オブジェクト リポジトリ マネージャ]ウィンドウで、[オブジェクト]>[オブジェクトの追加]を選択します。UFT One とオブジェクト・リポジトリ・マネージャの両方が非表示になります。
-
MyFlights アプリの[Username]エディット・ボックスをクリックし、[agentName]オブジェクトを選択して[OK]をクリックします。
agentName オブジェクトが親オブジェクト(Micro Focus MyFlight Sample ウィンドウ・オブジェクト)とともにオブジェクト・リポジトリに追加されます。
-
上記の 2 つの手順を繰り返し、[Password]エディット・ボックスのテスト・オブジェクトを追加して[OK]ボタンをクリックします。
agentName テスト・オブジェクトへのドリル・ダウン[テスト オブジェクト]ツリーで、agentName オブジェクトを選択し、オブジェクト・リポジトリの右側の表示枠に表示されるオブジェクトのプロパティを確認します。これらは、UFT One が実行セッション中にオブジェクトの認識に使用する記述プロパティまたは認識プロパティです。
-
-
[共有オブジェクト リポジトリの保存]ダイアログで、ソリューションとテストが保存されているフォルダを参照し、TutorialObjectRepositories という名前の新しいフォルダを作成します。
標準設定では、ソリューションとテストのフォルダは C:\%HOMEPATH%\My Documents\Unified Functional Testing です。
- [ファイル名]フィールドに名前として「Login」と入力します。
注意: この手順では、オブジェクト・リポジトリの保存のみが行われます。まだテストには関連付けられません。
-
-
Login オブジェクト・リポジトリをテストの Login アクションに関連付けます。
これにより、Login アクションの任意のステップでこのリポジトリ内のオブジェクトを使用できます。次の手順を実行します。
- UFT One のソリューション・エクスプローラで、[Login]ノードを参照して右クリックします。
- [リポジトリをアクションに関連付ける]を選択し、前の手順で作成した Login.tsr ファイルを参照します。開いたメッセージ・ボックスで[はい]をクリックします。
これで、オブジェクト・リポジトリが Login アクションに関連付けられ、そのアクションの子要素としてソリューション・エクスプローラに表示されます。
-
テストを保存します。続けて、MyFlight アプリの他の領域のオブジェクト・リポジトリを追加します。
詳細については、「ナビゲートして学習」を参照してください。
ナビゲートして学習
UFT One のナビゲートして学習機能を使用して、MyFlight アプリの残りの各ページの共有オブジェクト・リポジトリを作成します。[ナビゲートして学習]を使用することで、アプリケーションのページまたはセクション内のすべてのオブジェクトを一度に学習できます。
次の手順を実行します。
-
MyFlight アプリで、ログインして[Book Flight]ページを表示します。次の資格情報を使用してログインします。
- Username: john
- Password: hp
-
新しい共有オブジェクト・リポジトリを作成します。UFT One の[オブジェクト リポジトリ マネージャ]ウィンドウで、[新規作成]をクリックします。
-
[オブジェクト リポジトリ マネージャ]ウィンドウで続けて、[オブジェクト]>[ナビゲートして学習]を選択します。
UFT One と[オブジェクト リポジトリ マネージャ]ウィンドウの両方が非表示になり、[ナビゲートして学習]ツールバーが表示されます。
-
[オブジェクト フィルタの定義]ボタンをクリックし、[標準設定のオブジェクト タイプ]を選択します。
-
MyFlight アプリの[Book Flight]ページにあるすべてのオブジェクトを UFT One に学習させます。次の手順を実行します。
- MyFlight アプリで、Book Flight のタイトル・バーをクリックしてフォーカスを合わせます。
- [ナビゲートして学習]ツールバーで、[学習]をクリックします。
注意: MyFlight アプリがちらつき、テスト・オブジェクトが新しいオブジェクト・リポジトリに追加されます。
UFT One でこのプロセスが完了されるため、MyFlight アプリを操作しないでください。
-
[ナビゲートして学習]ツールバーを閉じて、UFT One と[オブジェクト リポジトリ マネージャ]ウィンドウに戻ります。
-
オブジェクト・リポジトリを以前作成した TutorialObjectRepositories ディレクトリに保存し、FlightFinder という名前を付けます。
-
新しい FlightFinder.tsr オブジェクト・リポジトリをテスト・フローの FlightFinder アクションに関連付けます。
詳細については、前述のログイン・アクションで行ったこの操作を参照してください。
追加のオブジェクト・リポジトリの作成
これらの手順を繰り返して、残りの MyFlight アプリ・ページ用に追加のオブジェクト・リポジトリを作成します。テストを保存し、関連付けられたアクション名に従って各オブジェクト・リポジトリに名前を付けます。
注意: ページを学習する前に、項目を選択するかテキストを入力して、すべてのボタンが有効になっていることを確認してください。そうすることで、UFT One がこれらのボタン・オブジェクトを適切に学習します。
アクションとリポジトリのサマリ
完了すると、テストには以下のページのオブジェクト・リポジトリが含まれます。
MyFlight ページ名 | オブジェクト・リポジトリ名 | 関連付けられたアクション |
---|---|---|
Login | Login | Login |
Book Flight | FlightFinder | FlightFinder |
Select Flight | SelectFlight | SelectFlight |
Flight Details | FlightConfirmation | FlightConfirmation |
オブジェクトとオブジェクト・リポジトリの詳細
UFT One ではテスト・オブジェクトを使用して、テストの実行中にアプリ内のオブジェクトを認識します。
これらの各テスト・オブジェクトは、UFT One のテスト・オブジェクト・モデルに基づいています。このモデルは、オブジェクト・タイプまたはクラスの大規模なセットです。各テスト・オブジェクト・クラスには次のものがあります。
- UFT One がオブジェクトを学習できる利用可能な記述プロパティのリスト
- UFT One がそのオブジェクトに対して実行できる関連操作のリストです。
各テスト・オブジェクト・クラスは、より大きな 1 つのテスト・オブジェクト階層に含まれています。たとえば、agentName テスト・オブジェクトは、Micro Focus My Flight Sample ウィンドウ・オブジェクトの子オブジェクトです。
実行環境オブジェクトは、アプリ内の実際のオブジェクトです。オブジェクトをオブジェクト・リポジトリに追加すると、UFT One は実行環境オブジェクトのプロパティを学習し、それらを UFT One テスト・オブジェクトに変換します。
オブジェクト・リポジトリに関する推奨事項
次のことをおすすめします。
アプリのセクション/ページごとに個別の共有オブジェクト・リポジトリを作成します。
これにより、更新時に正しいオブジェクトを簡単に見つけることができます。
テスト・オブジェクトを共有リポジトリに保存して、複数のアクションまたはテストで再利用します。
これらのテスト・オブジェクトに加えられた更新は、関連するすべての場所で使用されます。
テストに必要なテスト・オブジェクトのみを含めます。
これにより、リポジトリが小さくなり、管理しやすくなります。
テスト・オブジェクトとリポジトリの論理名を指定します。
これにより、テストを作成または変更するときに、他のユーザが正しいオブジェクトを簡単に選択できるようになります。
次のステップ: