- リリース ノート
- 基本情報
- セットアップと構成
- オートメーション プロジェクト
- 依存関係
- ワークフローの種類
- ファイルの比較
- オートメーションのベスト プラクティス
- ソース管理との連携
- デバッグ
- 診断ツール
- ワークフロー アナライザー
- 変数
- 引数
- インポートされた名前空間
- レコーディング
- UI 要素
- 制御フロー
- セレクター
- オブジェクト リポジトリ
- オブジェクト リポジトリについて
- オブジェクト リポジトリを作成する
- オブジェクトと UI ライブラリを再利用する
- データ スクレイピング
- 画像とテキストの自動化
- Citrix テクノロジの自動化
- RDP の自動化
- SAP のオートメーション
- VMware Horizon の自動化
- ログ
- ScaleCoordinates 移行ツール
- ScreenScrapeJavaSupport ツール
- Webdriver プロトコル
- Studio Pro
- 拡張機能
- トラブルシューティング
Studio ガイド
オブジェクト リポジトリを作成する
オブジェクト リポジトリは、以下から収集した要素をアプリケーション、バージョン、画面ごとにグループ化したものです。
- ローカル プロジェクト、すなわちローカル リポジトリ。
- ライブラリ、すなわち現在のプロジェクトに対する UI ライブラリの依存関係。
ローカル リポジトリは、以下のいずれかの方法で作成できます。
- 「要素をキャプチャ」レコーダーを使用して UI の説明をキャプチャします。
- [オブジェクト リポジトリ] パネルで直接、アプリケーション、画面、要素を手動で作成します。
UI ライブラリは以下の方法で作成できます。
- 任意のプロジェクトからライブラリ プロジェクトにローカル リポジトリを抽出し、NuGet パッケージとしてパブリッシュします。
-
新しいライブラリから開始し、そこでリポジトリを構築し、NuGet パッケージとしてパブリッシュします。
その後、UI ライブラリの NuGet パッケージを使用し、依存関係としてプロセスに追加することができます。
重要:「要素をキャプチャ」レコーダーでは、プロジェクト内で再利用するためにオブジェクトが記録されるだけであり、[デザイナー] パネル内にワークフローが生成されることはありません。
ライブラリまたはプロセスで、オブジェクト リポジトリの [要素をキャプチャ] ボタンをクリックして、オブジェクトの記録を開始します。
「要素をキャプチャ」レコーダーは、UIAutomation.Activities パッケージ (バージョン 20.10 以降) の統合ターゲット技術を利用して、セレクター、画像、アンカーのそれぞれに対するある程度の精度でターゲットとアンカーをキャプチャします。
UI 要素はセレクター、あいまいセレクター、画像とともにキャプチャされ、それぞれにある程度の精度が確保されます。これらのターゲット要素を 1 つだけ維持するか、すべて維持するかを選択できます。同じことが、アプリケーション内の各 UI 要素に関連するアンカー要素にも当てはまります。
アプリケーション内のセレクターは、ボタン、チェックボックス、テキスト フィールド、トグル、リスト ボックスなど、ロボットと対話可能なあらゆる種類の要素を表すことができます。キャプチャ済みの要素は「要素をキャプチャ」レコーダーで定義できます。
[種類] ドロップダウン リストから、各要素に適した種類を検索して選択することができます。オブジェクト リポジトリ内では、要素に種類別のアイコンが付けられるため、オブジェクトを区別しやすくなります。
要素をキャプチャした後で、[オブジェクトをライブラリに保存] ボタンをクリックすると、オブジェクトがオブジェクト リポジトリに追加されます。
- 要素を追加するには、リポジトリ内の画面または要素を右クリックし、[要素を作成] を選択します。画面を追加するには、アプリケーションを右クリックし、[画面を作成] を選択します。
- アプリケーションまたは画面の下に直接オブジェクトを記録するには、任意のアプリケーションまたは画面を右クリックし、[要素をキャプチャ] を選択します。
[オブジェクト リポジトリ] パネルの [記述子] タブのプラス記号をクリックするか、同じタブのプロジェクト記述子を右クリックして [アプリケーションを作成] を選択します。[アプリケーションを作成] ウィンドウが表示されます。
一意のアプリケーション名、バージョン、説明を入力します。[アプリケーションを作成] をクリックします。アプリケーションが、[記述子] タブの [プロジェクト UI 記述子] の下に表示されます。
[記述子] タブでアプリケーションを選択してプラス記号をクリックするか、アプリケーションを右クリックして [画面を作成] を選択します。[画面を追加] ウィンドウが表示されます。
画面の一意の名前、および説明を追加します。自動化する画面を指定し、キャプチャした要素を統合ターゲットで編集します。
- 必要に応じて、アプリケーション パスを変更します。
-
アプリケーション引数を追加します。
完了したら、[画面を作成] をクリックします。
[記述子] タブでアプリ画面を選択してプラス記号をクリックするか、画面を右クリックして [要素を作成] を選択します。[要素を追加] ウィンドウが表示されます。
[記述子の種類] セクションで、[要素を指定] をクリックします。統合ターゲットを使用して画面から要素を指定し、キャプチャします。
直観的に理解できる名前を [要素名] フィールドに追加し、[種類] ドロップダウン リストから要素の種類を選択します完了したら [保存] をクリックします。
- オブジェクト リポジトリで要素を編集するには、対象の要素を右クリックして [要素を編集] を選択するか、ツリー内の要素をダブルクリックします。
- 要素の記述子を編集するには、[要素を編集] ウィンドウの [記述子を編集] オプションを使用するか、ツリー内の要素を右クリックして [記述子を編集] を選択します。
オブジェクト リポジトリが (「オブジェクト リポジトリについて」ページの説明に従って) Studio のインスタンスに適用される場合は、アプリ/Web レコーダーの使用時に、生成されたアクティビティによりリポジトリの記述子が自動的に参照されることはありません。
アクティビティのレベルで、オブジェクト リポジトリに記述子を追加するか既存の記述子を使用するよう、情報提供用のツールチップで通知されます。
そのためには、アクティビティ内でアイコンをクリックして、記述子を追加または再利用するための手順を実行します。あるいは、[オプション] > [オブジェクト リポジトリに追加] の順に選択してオブジェクト リポジトリに要素を追加します。
オブジェクト リポジトリを作成した後は、[デザイナー] パネルから直接 UI 要素を追加できます。
[デザイナー] パネルでは、[クリック] や [文字を入力] など、セレクターをサポートするアクティビティを追加します。追加したアクティビティが [アプリケーション/ブラウザーを使用] アクティビティ内にあることを確認してください。
アクティビティの本体内で、オブジェクト リポジトリ アイコンをクリックして [選択オプション] ウィンドウを開きます。要素をキャプチャし、[確認] を選択すると、[要素をオブジェクト リポジトリに追加] ウィンドウが開きます。要素に名前を追加し、[保存] をクリックします。[オブジェクト リポジトリ] パネルに要素が追加されます。
オブジェクト リポジトリから、アプリケーション、画面、または要素をワークフロー内のアクティビティの上部にドラッグ アンド ドロップします。オブジェクトの画像、引数、その他詳細が自動的にアクティビティに追加されます。
MyAppScreen
オブジェクトをドラッグした例です。アプリケーション パスがアクティビティに自動的に追加されています。
あるいは、ワークフロー内のプラス記号の上にオブジェクトをドラッグすると、対応するアクティビティのリストが開きます。アクティビティを選択すると、オブジェクトが自動的に追加されます。プロセス内で、アクティビティはアクティビティ名 + オブジェクト名のラベルを受け取ります。
オブジェクトが追加された後、アクティビティは、アクティビティの [プロパティ] パネルに表示される記述子のプロパティをオブジェクト リポジトリから受け取ります。
- 記述子を編集するには、[プロパティ] パネルの上部にある [表示] をクリックしてオブジェクト リポジトリに移動し、[記述子を編集] オプションを使用します。
-
アクティビティとオブジェクト リポジトリ間のリンクを削除するには、[プロパティ] パネルの上部にある [リンクを解除] をクリックします。オブジェクト リポジトリが適用されている場合、リンクを解除することによってターゲットがアクティビティから削除されます。
オブジェクトがワークフローに追加されると、[オブジェクト リポジトリ] パネルの [UI アクティビティ] タブに、アクティビティとそれに含まれるオブジェクトが階層順に表示されます。表示されない場合は、プロジェクトを保存し、再度確認してください。
ワークフローは次のようにマークされます。
- ワークフロー ファイル内の少なくとも 1 つのアクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は、グレーのドット
- ワークフローのすべてのアクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は青のドット
UI アクティビティは、次のようにマークされます。
- ワークフローのアクティビティが [オブジェクト] パネルの UI 記述子を参照していない場合は白のドット
- アクティビティが [オブジェクト] パネルの UI 記述子を参照している場合は青のドット
記述子はオブジェクト リポジトリから、「オンライン編集」あるいは「オフライン編集」のいずれかの方法で編集できます。
- オンライン編集 - 現在のマシン上でアプリケーションまたはブラウザーにアクセスできる場合。アプリケーション/ブラウザーが画面上に表示され、要素を再度選択したり、変更したりできます。
- オフライン編集 - アプリケーションがインストールされていないか、マシンがオフラインになっているため、現在のマシンではアプリケーション/ブラウザーにアクセスできない場合。要素のセレクターが表示され、要素を変更することができます。
[記述子] タブで、要素を右クリックし、[記述子を編集] を選択します。選択画面が開き、別の要素をキャプチャしたり、セレクターやアンカーを編集したりできます。
[要素を編集] ウィンドウの [記述子を編集] ボタンをクリックしても、同じことができます。
既にオブジェクト リポジトリで参照されている画面または UI 要素を指定すると、プロジェクト UI 記述子または UI ライブラリのいずれかで一致するものが自動的に検出され、以下のウィンドウが表示されます。
次のオプションを使用できます。
- 再利用 - 一致する記述子をオブジェクト リポジトリから現在のアクティビティに追加します。
- 新規作成 - 新しい画面/要素の作成、またはオブジェクト リポジトリ内の既存の画面/要素の更新を行うオプション ウィンドウを開きます。
- キャンセル - リポジトリ内のオブジェクトに一切変更を加えずに、アクティビティ内で現在示されているセレクターを保持します。
画面を指定すると、対応する UI 記述子が検出される一方、ターゲット要素を指定すると、一致する UI 記述子が検索されます。レコーダーを使用している場合は、画面と要素の一致するものが、ローカル UI ライブラリのプロジェクト UI 記述子または UI ライブラリのインポートされた依存関係の中から検索されます。
再利用性を向上させるために、記述子の変数を使用できます。
ターゲットを編集し、変数を追加して、オブジェクト リポジトリに追加するか、既存の画面または要素のセレクターにオブジェクト リポジトリから変数を追加することができます。変数を含む記述子をプロセスに追加するときは、必ずプロセス内に変数を作成してください。そうしなければ、式を読み取ることができません。
記述子セレクターに変数を追加するには、オブジェクト リポジトリ内の要素を右クリックして [記述子を編集] を選択し、[選択オプション] ウィンドウから変数を追加します。
<name='{{VarNumber}}'/>
とすると、変数 VarNumber
の値がセレクターの name
属性に追加されます。
以下の例では、[アプリケーション/ブラウザーを使用] アクティビティの [ブラウザーの URL] フィールド内で変数を使用し、ターゲットを画面オブジェクトとしてオブジェクト リポジトリに追加しました。このようにして、URL が変更になるケースが記述子で考慮されるようにします。