Skip to content

UiPath 完全セレクターと部分セレクターの違い

Posted in Notes

Last updated on 2021年9月26日

久しぶりのUiPathノート。
今回は、知っている人は知っているが少し気になる完全セレクターと部分セレクターについてです。
では、どうぞ。


絶対パス、相対パスと似たようなもの

セレクターというワードはUiPath独特の言葉であり難しく聞こえてしまいますが、「完全セレクター・部分セレクター」とはファイルシステムでいう「絶対パス・相対パス」と考え方は同じです。

完全セレクター

ファイルシステムでいうと絶対パスと同じく、ルートからのすべての情報を記述します。

つまり、「全てを記述した=完全」セレクターです。

部分セレクター

部分セレクターは、ファイルシステムでいうと相対パスです。

そのため、"どこから"という基準を決める必要がありその時利用するのがコンテナアクティビティ(後述)というものになります。

逆を言えば、コンテナアクティビティの中でしたこの部分セレクターを利用することができません。

つまり、部分セレクターとはコンテナアクティビティで指定されたUI要素からの相対的なUI要素を指定したものになります。


部分セレクターを生成するコンテナアクティビティ

部分セレクターを生成するコンテナアクティビティは下記のアクティビティになります。


完全セレクターと部分セレクターのサンプル

完全セレクターと部分セレクターのサンプルをメモ帳への書き込みの例を用いて記載します。

「ウィンドウへアタッチ」と「文字を入力」アクティビティを利用しています。

完全セレクターのサンプル



文字を入力アクティビティのセレクター

部分セレクターのサンプル



コンテナアクティビティのセレクター

文字を入力アクティビティのセレクター
コンテナアクティビティのセレクター(グレー部分)が補完されています

完全セレクターと部分セレクターの使い分け

使い分けと書きましたが、どちらを使わなければいけないというルールはありませんし、どちらかの方法でしか動かないというようなこともありません。

使い分けについては、半分は個人の趣味によるところが大きいです。

とはいえ、開発での推奨はありそれは保守の観点および動作の観点となります。

同じアプリケーションや同じウィンドウ上で複数回の操作を行う場合、部分セレクターを利用したほうがUI要素を操作する意図が明確になり、保守をしやすいワークフローになります。

また、親ウィンドウのセレクターが微妙に変わってしまった場合も内部の構造が変わっていなければ、コンテナアクティビティの「ウィンドウへアタッチ」さえ修正すれば、その変更だけで対応できてしまいます。

動作の観点としては、PCへの負荷が挙げられます。

完全セレクターは対応するUIをルートから順次探すので、実行時のPCへの負荷も少なからず高くなります。

あまり気にしなくてもいい程度かと思いますが、頭に入れておいてPCスペックによっては対応できるようにしておくと良いかと思います。


最後に


以上、UiPathの「完全セレクター」と「部分セレクター」についての説明でした。
正直この辺は知っていなくても開発できてしまいますが、情報も不足指定的なる方は気になると思います。
結論は、どちらを使っても良いだと思いますが、是非使い分けを意識しつつ開発してみてください。

今回も最後までお読みいただきありがとうございました。

では。

Be First to Comment

コメントを残す