『ブラウザーを使用』で同じタイトルの複数タブを操作する方法

:grey_question: Question

ブラウザでURLとタイトルが同じページを複数タブで開いて操作します。

『ブラウザーを使用』アクティビティの中で対象タブはどのように設定しますか?

:bulb: Answer

解決策

セレクタのidx属性を使うことで複数タブを区別することができます。

例えば以下のように2つのタブは同じURL(https://www.google.com)・同じタイトル(Google)ですが、1つ目のタブには「Google Search」ボタンが、2つ目のタブには「Google 検索」ボタンがあります。

『ブラウザーを使用』アクティビティの中に『強調表示』アクティビティを配置して、2つ目のタブの「Google 検索」ボタンを指定した時、『強調表示』アクティビティのプロパティ > ターゲット > ウィンドウセレクターは以下のようになります。

<html app='chrome.exe' title='Google' />

この状態でワークフローを実行すると、1つ目のタブの中に「Google 検索」ボタンを探して存在しないため、「このアクションのユーザー インターフェイス (UI) 要素が見つかりませんでした」エラーが発生します。

ウィンドウセレクターの右側アイコン「式エディターで開く」をクリックし、セレクター編集画面で末尾に idx=‘<タブの順序>’ のように記載してタブを指定します。たとえば1つ目のタブを指定する場合は idx=‘1’、2つ目のタブを指定する場合は idx=‘2’ と指定します。

<html app='chrome.exe' title='Google' idx='2' />

タブの順番がその時々に応じて変化する場合は、idxにワイルドカードを設定することで、全てのタブ内からUI要素を探すようにも設定できます。

<html app='chrome.exe' title='Google' idx='*' />

ターゲットの選択オプションからも、ウィンドウセレクターを編集できます。