Locator Spy を使用して、ロケーターまたはオブジェクト マップ項目を手動でキャプチャし、ロケーターまたはオブジェクト マップ項目をテスト メソッドにコピーします。たとえば、Locator Spy を使って、GUI オブジェクトのキャプションや XPath ロケーター文字列を識別できます。そして、関係するロケーター文字列や属性をスクリプト内のテストメソッドにコピーします。
- 変更したいテスト クラスを開きます。
- Silk4J ツール バーで、Locator Spy をクリックします。
Locator Spy とテスト対象アプリケーションが開きます。モバイル アプリケーションをテストしている場合、モバイルデバイスの画面を表示する [モバイルの記録] ウィンドウが開きます。この記録ウィンドウで操作を実行することはできませんが、モバイル デバイスやエミュレータ上で操作を実行してから、記録ウィンドウの表示を更新することができます。
- 省略可能:ロケーターを記録する前に、テスト対象アプリケーションを特定の状態にするには、ロケーターの記録を停止 をクリックします。 これ以降、テスト対象アプリケーションで実行する操作は、記録されなくなります。ロケーターの記録を再開する場合は、ロケーターの記録を開始 をクリックします。
- Microsoft Edge、Mozilla Firefox、Google Chrome、Apple Safari 上で Web アプリケーションをテストしている場合は、記録モード を選択できます。
- Silk4J モードでロケーターを記録する場合は、Silk Test ロケーターの記録 を選択します。
- WebDriver モードでロケーターを記録する場合は、WebDriver ロケーターの記録 を選択します。
注: WebDriver ロケーターを記録する場合、オブジェクト ツリー上の「>」は、ある IFrame から他に切り替わることを意味します。
- 省略可能:オブジェクト マップ項目の代わりにロケーターを ロケーター 列に表示するには、オブジェクト マップ識別子の表示 チェック ボックスをオフにします。 この設定は、WebDriver ロケーターの記録時には利用できません。オブジェクト マップ項目名は、コントロールまたはウィンドウに対して、コントロールやウィンドウのロケーターではなく論理名 (エイリアス) を関連付けます。デフォルトでは、オブジェクト マップ項目名が表示されます。
注: このチェック ボックスをオンまたはオフにすると、変更が自動的にロケーターの詳細に反映されます。ロケーターの詳細 テーブルのエントリを更新するには、エントリをクリックします。
- 記録するオブジェクトの上にマウスを移動します。 関連するロケーター文字列またはオブジェクト マップ項目は、選択済みロケーター テキスト ボックスに表示されます。
注: ブラウザーでテストしている場合、選択済みロケーター フィールドに実際にキャプチャするとロケーターのみが表示される。
- Ctrl+Alt を押してオブジェクトをキャプチャします。
注: スクリプト オプション ダイアログ ボックスの 全般記録オプション ページで別の記録停止キー操作を指定した場合は、Ctrl+Shift を押してオブジェクトをキャプチャします。
- 省略可能:追加のロケーター属性の表示 をクリックすると、関係する属性のすべてが ロケーター属性 テーブルに表示されます。
- 省略可能:記録したロケーター属性は、ロケーター属性 テーブルの別のロケーター属性で置き換えることができます。 たとえば、記録したロケーターは以下のように表示されます。
/BrowserApplication//BrowserWindow//input[@id='loginButton']
ロケーター属性 テーブルに textContents Login がリストされている場合、以下のようにしてロケーターを手動で変更できます。/BrowserApplication//BrowserWindow//input[@textContents='Login']
新しいロケーターは、選択済みロケーター テキスト ボックスに表示されます。
- WebDriver ロケーターを記録している場合は、選択したロケーター でロケーターの種類を選択します。
- XPath ロケーター。コントロール クラスの名前と優先付けられた属性のコレクションの組み合わせによって、コントロールをユニークなロケーターに識別します。組み合わせたロケーターでコントロールをユニークに識別できない場合には、Silk4J は、ロケーターにインデックスを追加したり、「//」を使用して親の UI コントロールを前に付け足します。
- ID による識別。 id 属性によってコントロールを識別します。
- 名前による識別。name 属性によってコントロールを識別します。
- リンク テキストによる識別。ハイパーリンクの場合にのみ選択できます。
- ロケーターをコピーするには、ロケーターをクリップボードにコピー をクリックします。 選択済みロケーター テキスト ボックスで、コピーするロケーター文字列の位置をマークし、マークしたテキストを右クリックして コピー をクリックすることもできます。
- スクリプト内で、記録したロケーターを貼り付ける位置にカーソルを置きます。 たとえば、スクリプト内の Find メソッドの該当するパラメータにカーソルを置きます。
ロケーターを貼り付けるテスト メソッドでは、ロケーターをパラメータとして受け取れるメソッドを使用する必要があります。Locator Spy を使用することで、クエリ文字列が正しいことが保障されます。
- ロケーターまたはオブジェクト マップ項目をテスト ケースまたはクリップボードにコピーします。
- 閉じる をクリックします。