簡體   English   中英

Java Selenium。 通過文本查找某些xpath的元素

[英]Java Selenium. Find element by text for certain xpath

嘗試查找要用於的xpath表達式:

wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("XPATH HERE"))).click();

該元素在頁面上顯示“邀請用戶”,我需要能夠單擊它

我需要找到元素/a[@id='inviteUsers_8ef17ba4-b739-4fb6-8198-3862ea84c381_toggle']但問題是動態生成“ inviteUsers_”之后的字符

我已經嘗試過這些:

"//*[contains(.,'Invite Users')]";
"//a[contains(.,'Invite Users')]";

這些給NoSuchElement例外。

這是完整的XPATH:

/html/body/div[@class='col-xs-10 col-xs-offset-2 main']/fieldset[@class='form-horizontal']/div[@id='roles']/div[@id='entitlements']/div[@class='panel panel-default '][3]/div[@id='service_8ef17ba4-b739-4fb6-8198-3862ea84c381']/div[@class='panel-body']/div[@class='panel panel-default'][1]/div[@class='panel-heading']/h4[@class='panel-title']/a[@id='inviteUsers_8ef17ba4-b739-4fb6-8198-3862ea84c381_toggle'] 

您可以使用starts-with()解決此問題:

//a[starts-with(@id, "inviteUsers_")]

如果這不起作用,請嘗試查找唯一的父級。

 //div[contains(@id, 'service')]//a[contains(@id, 'inviteUsers')] 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM