Selenium C#:无法识别带有类名的xpath

时间:2017-06-21 04:02:19

标签: c# selenium selenium-webdriver

我想点击结果集窗口中突出显示的记录。我使用xpath作为

""//div[contains(@class, 'email-icon icon')]/label[contains(@class, 'text')]";" 

但是,脚本无法识别记录。

注意:Div id是动态的。

元素:在屏幕截图中用蓝色标记的记录。

使用的Xpath:" // div [包含(@class,' email-icon icon')] / label [包含(@class,' text')] &#34 ;;

HTML code:

** ** Dhanaprabhu0106

enter image description here

2 个答案:

答案 0 :(得分:0)

您的XPath不正确。请参阅下面的示例。

//div[contains(@class, 'has-icon')]/label[contains(@class, 'text')]"

//img[contains(@class, 'email-icon')]/../label[contains(@class, 'text')]"

答案 1 :(得分:0)

似乎Webdriver无法使用您使用的xpath访问所需的标签。请尝试以下方法:

//div[starts-with(@id, 'sc')]//div[@class='sc-view sc-table-row-view sc-collection-item even hover sc-regular-size']/div/img[@class='email-icon icon']/following-sibling::label[normalize-space(text())='Dhanaprabhu0106']

请告诉我,它是否适合您。

更新1:

尝试使用IJavaScriptExecutor单击,如下所示:

IJavaScriptExecutor e = (IJavaScriptExecutor)driver;
e.ExecuteScript("arguments[0].click();", driver.FindElement(By.xpath("//div[starts-with(@id, 'sc')]//div[@class='sc-view sc-table-row-view sc-collection-item even hover sc-regular-size']/div/img[@class='email-icon icon']/following-sibling::label[normalize-space(text())='Dhanaprabhu0106']"));

请告诉我,它是否适合您。