2016-08-21 92 views
1

我無法在Appium中使用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是類屬性。

應該不是你的XPath是這樣的:

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

總是在檢查嘗試手動選擇。

+0

嗨勞達,抱歉,但它不工作.. –

2

@Sahil Sehgal:因爲您的元素沒有名稱屬性,所以您可以使用text屬性來查找元素。在下面的例子中,我添加了「可用餘額」和「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

你能發佈錯誤日誌嗎?你嘗試過哪一個?在上面的解決方案中,我使用的@text不是文本() – Suman

+0

,我想'@text'在xpath中是無效的語法 –

1

以全文檢索。希望這會起作用。

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

在上述解決方案中,當客戶餘額變化時,xpath將僅適用於該餘額(INR1567.89),測試將失敗。 – Suman