はじめに
UiPathブログ発信チャレンジサマー2023の企画で今回書きました!
本当なら七夕に書きたかったんですが、ちょうど七夕は長野に登山に行くため
電波がないので6日にしました!
セレクターは取れているのにテストをするとセレクターが取れていないことがありませんか?
私は実務でこれを経験しました。
セレクターは取れているのに何で取れないんだ?と思い、
先輩に聞いたら使っているサイトの特徴をよく見ようと言われました。
その後、使っているサイトをよく見るようにし、ポイントは2つありました。
ポイント1:本番用とテスト用のサイトで開発しているか。
登録作業の自動化に対して、本番用のサイトを使って開発することができないため、
テスト用のサイトを使用します。
本番用とテスト用でそれぞれセレクターを取るのではなく、
両方とも使用できるセレクターを作成することが必要です。
この場合はワイルドカード(*)を使用することで解決します。
ポイント2:同じ入力項目行を増やすUI操作があるか。
サイトの仕様上、複数レコードを登録するために、同じ入力項目行を増やすことがあります。
入力項目行が増える度にセレクター内の行に関わる項目が+1ずつされていきます。
この場合は変数で解決します。
具体的にそれぞれのポイントに対してどのように対応すればいいか。
ポイント1,2のパターンでエラーになったときにエラーになった場面に対して
UI Explorerの修復を使います。
するとサイトの差異を認識しワイルドカードが現れ、ポイント1,2のどれに当てはまるか見て
対応するといいです。
具体的な手順を下記の通りです。
1,UI Explorerを開く。
図1の緑枠をクリック、赤枠をクリックするとUI Explorerが開くことができます。
図1 UI Explorerの開き方
2,修復を押下する。
図2の赤枠が活性になっていたらクリックをしましょう。
図2 修復のボタン
3,ワイルドカードの存在を確認する。
図3,4の赤枠にワイルドカード(*)ができます。
図3(ポイント1)の場合は、このままで保存ボタンを押下します。
図4(ポイント2)の場合は、変数を設定してから保存ボタンを押下します。
図3 ポイント1の場合
図4 ポイント2の場合
最後に
この方法でなくてもそれぞれのパターンに対して、セレクターを取りサクラエディタなどに
貼り付けて比較する方法でもいいと思います。
一番大事なことは事前にこのパターンがあることを頭に入れておくことで
このようなエラーを回避できると思います。
今後もこのような記事を書いていくので、困っている方の助けになればいいなと思っています。