2016-08-21 8 views
1

xpathを使用することはできません。私はそれがAppiumでサポートされているのか分かりません。 Apiレベル19。 誰でも助けてくれますか: 私は、天秤を見せているテキストビューをクリックする必要があります。 INR ..... は、だから私はAppium xpathには動作していません。

driver.findElement(By.xpath("//android.widget.TextView[contains(@name,'INR')]")); 
    and  
    driver.findElement(By.xpath("//android.widget.TextView[contains(text(),'INR')]")); 

を使用していますが、私は見ての通り、何も

enter image description here

+0

スクリプトに何らかの例外またはエラーメッセージがありますか?あなたが共有したステップは要素の検索だけを試みますが、何もしないでください。 – Domestus

+0

@Domestus、はい、要素を見つけることができません。 –

+0

driver.findElement(By.accessibilityId( "INR 1,567.89")) – SaiPawan

答えて

0

に動作しない、android.widget.TextViewは、クラス属性です。

//*[contains(@class, 'widget')][contains(text(),'INR')] 

常にインスペクタに手動でセレクタを試してみてください。

は、あなたのXPathは何かすべきではありません。

+0

こんにちはlauda、申し訳ありませんが、動作しません.. –

2

@Sahil Sehgal:要素に名前属性がないため、テキスト属性を使用して要素を見つけることができます。以下の例では、「残高」と「INR」のチェックを追加しました。あなたのニーズに合ったものを使用してください。 -

driver.findElement(By.xpath("//android.widget.TextView[contains(@text, 'Available Balance')]")).click(); 
driver.findElement(By.xpath("//android.widget.TextView[contains(@text, 'INR')]")).click(); 
+0

これは主な問題です。私は上記のコードで試したが、要素を見つけることができません。 –

+0

エラーログを送信できますか?どちらを試しましたか?上記の解決策では、私はテキスト() – Suman

+0

ではない@textを使用しています、私は '@テキスト'はxpathで有効な構文ではないと思います –

1

検索の全文を表示するうまくいけば、これはうまくいくでしょう。

driver.findElement(By.xpath("//android.widget.TextView[@text='INR 1,567.89']")).click(); 
+0

上記のソリューションでは、顧客残高が変更されると、xpathはこの残高(INR 1,567.89)に対してのみ機能し、テストは失敗します。 – Suman

0

xpathで問題はありませんが、appiumのバグです。これを参照してください:

関連する問題