エレメントを正しく見つける

テスト実行時にエレメントを正しく見つけることは、興味深い課題を呈しています。ページ上には動的コンテンツや類似のエレメントがいくつも存在することがあるため、テストで特定のアクションの背後にある意図を考慮することが一層重要になります。

mablでは、アプリケーションで記録した操作やエレメントごとに収集される各種属性に基づいてエレメントを正しく見つけるために、幅広い戦略を活用しています。テスト実行時にエレメントを正しく見つけるうえでは、タイミング、意図、コンテキストの3つの側面が重要です。

エレメントを正しく見つけるため、mablでは、アプリケーションが正しい状態になっているかどうか、そのエレメントが選択された理由、およびエレメントに関連するコンテキストが重要なものかどうかを把握する必要があります。

mablでの検索ステップの仕組み

mablでは、テストの作成時にエレメントを見つけるためのさまざまな設定が利用できます。これらの戦略の違いと、それぞれをどのような場合に使用すべきかを理解することで、より柔軟なテストを作成することができます。

  • 標準的な検索ステップ: mablでエレメントを操作するステップを記録すると、エレメントの属性に関する情報が収集されます。テストの実行時には、各候補に一致する属性の組み合わせと、そのエレメントおよび類似エレメントの検索履歴に基づいて、最も一致するエレメントが選択されます。
  • 設定された検索ステップ: ステップで検索を設定する場合に、重要度の高い属性を指定することができます。これにより、そのステップの背後にある意図に基づいて検索ストラテジーを調整することができます。
  • 類似エレメントの設定された検索: ページ上に類似エレメントが数多く存在する場合、特定のエレメントを選択した理由についての詳細なコンテキストの追加を求められることがあります。この情報は設定された検索ステップと同じように使用されます。
  • waitステップとwait untilステップ: アプリケーションが正しい状態になるのに時間がかかる場合は、waitまたはwait untilステップを使用できます。waitステップでは、一定時間待機してから先に進みます。wait untilステップでは、ユーザーが特定のエレメント属性を選択し、ページ上でその属性が利用可能になるまで待機してから先に進むことができます。
  • XPathおよびCSSセレクター: 変更されそうにない特定のエレメントをターゲットにする場合や、検索ステップをさらに細かく制御する必要がある場合は、XPathまたはCSSセレクターを使用してカスタム検索を作成できます。ただし、カスタム検索では自動修復機能が使えないことに注意する必要があります。

対象を絞った検索ステップを作成するメリット

[Configure Find] での対象を絞った検索ステップの作成には、次のようなメリットがあります。

  • 柔軟性: 時間とともにアプリケーションが変化していったときに、一部の属性が変更された場合でも、mablでエレメントを正しく見つけられる可能性が高くなります。
  • 自動修復: 重要度の高い属性を指定することによって、正確に自動修復を行うことができます。
  • 汎用性: データ駆動型変数を使用して検索ステップを設定することで、さまざまな値に対して検索ステップの背後にある意図を変更することができます。