「要素が見つかりません」エラーの対処法
RKシリーズでシナリオを実行中に「要素が見つかりません」といったエラーが出た場合、どのように対処すればよいでしょうか。今回は、原因の特定方法から解決策まで、具体的な手順を解説します。
RKで認識できる要素の種類
RKシリーズで認識できる要素は、大きく以下の3種類に分類されます。
- UI要素:Windowsアプリケーションのボタンや入力欄などの画面要素
- HTML要素:Webブラウザ上で構成される要素
- SAP要素:SAPシステム上の専用要素
上記3つの要素すべてにおいて共通することは、設定している要素とエラー時の要素が一致しているかどうかが原因の核心となります。
要素が変化しているかどうかを調べる方法
要素を調べるためには、以下の手順で確認することができます。
調査手順
- エラーが発生したら、ウィンドウを閉じたりページ移動はしないでください
- RKのエディター画面を開く
- エラーになったアクティビティを選択
- レコード機能を起動
- 設定していた箇所と同じ箇所をクリック
- 新規アクティビティとして、マウスクリックのアクティビティが追加されます
- レコード機能を閉じ、このまま反映を押下
- マウスクリックアクティビティの「三」ボタンを押下
- XPathの値をコピー
- メモ帳やExcelファイルを開き貼り付け
- 元のエラーになっていたアクティビティも同様にXPathをコピーして貼り付け
- XPathを上下に並べることで、要素が変化していたかどうかを明確に確認できます
要素が変化していなかった場合
XPathを比較した結果、要素が変化していなかった場合、以下の原因が考えられます。
考えられる原因
- フレーム要素が変化している可能性(HTML要素の場合)
- 指定の要素が別ウィンドウなどで目視できていない可能性(UI要素の場合)
改善手順
- 「ウィンドウをアクティブにする」アクティビティをエラー箇所の前に設置
ウィンドウが背面にあるなど、要素が見えていない状態を防ぎます。 - HTML要素の場合はフレームを確認
エラーになったアクティビティをダブルクリックし、詳細を開きます。要素に「フレーム」という入力欄が存在しているので、そちらをご確認ください。
上記方法と同様に、レコード機能で同じ箇所をクリックし、新たに取得されたアクティビティのフレーム要素をご確認願います。 - 上記で改善されない場合は調査が必要
キーエンスカスタマーサポートまでお問い合わせください。
要素が変化していた場合
XPathの比較で要素が変化していた場合、指定箇所が変動する箇所であることが原因です。以下の方法で改善することが多いです。
改善方法
- Try-Catchを活用する
要素のパターンを確認し、パターンに合わせて「Try-Catch」でエラーになれば次の要素へ回避することが可能です。 - 画像認識とキー操作に変更する
要素認識から画像認識やキー操作に切り替えることで、変動箇所への対応が可能です。 - 繰り返しとTry-Catchを組み合わせる
すべての要素で安定したシナリオを作成することも可能です。その場合は、ぜひ弊社にご依頼くださいませ。
まとめ
「要素が見つかりません」エラーの原因は、主に以下の2パターンに分類されます。
- 要素が変化している場合:XPath比較で確認し、Try-Catchや画像認識への切り替えで対応
- 要素が変化していない場合:ウィンドウの表示状態やフレーム要素を確認
適切な調査手順で原因を特定し、上記の改善方法で解決を目指してください。解決が難しい場合は、RKパートナーズまでご相談ください。
