ネイティブモバイルアプリテストのセレクター
概要
セレクターは、要素と対話したり、要素を使用してアサーションを実行する前に、要素を見つけるための基礎です。Nightwatchは、要素の特定に使用できる次のセレクター戦略をサポートしています。
- id
- xpath
ID
これはネイティブ要素のIDです。つまり、Androidではresource-id
、iOSではname
です。コードベースにアクセスできない場合でも、Appium Inspectorツールを使用してIDを簡単に検出できます。
強調表示された要素には、org.wikipedia:id/search_src_text
というID値があります。
その要素と対話するには、セレクター戦略はid
、セレクター文字列はorg.wikipedia:id/search_src_text
になります。
XPath
IDに加えて、XPathを使用して要素を見つけることもできます。
AppiumのXPathはアプリのXML構造を分析し、要素を特定します。XPathは、特定のUI要素にID、Name、またはアクセシビリティIDが割り当てられていない場合にのみ使用する必要があります。XPathでは複雑なクエリを作成できますが、公式ドキュメントで説明されているように、安定性とパフォーマンスの問題があるため、XPathの使用はお勧めしません。
n番目の要素の選択
Nightwatchセレクターは、文字列の代わりにセレクターオブジェクトを受け入れることもできます。これにより、より多くのオプションを提供できます。要素リストからn番目のインデックスにある要素を選択できます。たとえば、複数のリストアイテムを含むリストがある場合、セレクター文字列の代わりにセレクターオブジェクトを送信することで、n番目の要素を選択できます。
app.click({selector: 'org.wikipedia:id/page_list_item_title', locateStrategy: 'id', index: n})
次の推奨手順
セレクターを理解したので、それらを使用してコマンドとアサーションを作成できます。