如何单击span类中的动态元素? Selenium WebDriver

时间:2015-06-30 01:30:53

标签: xpath dynamic selenium-webdriver automated-tests firepath

大家好我在这种情况下遇到了问题。请提供关于该做什么的建议。

尝试使用此xpath(不工作):

.//* [@ ID = '76' ] / DIV / DIV [3] /跨度[1] /跨度

请帮帮我。

注意:“显示详细信息”链接是可点击的,它们具有不同的ID,黄色标记中的链接是无法点击的链接。

我感谢所有愿意分享他们的想法的人 谢谢!

4 个答案:

答案 0 :(得分:2)

您可以尝试如下:

xpath = (// span [text(),' Show Details'])[76]

正如您所说的“显示详细信息”的ID继续改变,然后你必须把当前的id代替76。

此xpath有望为您服务。

答案 1 :(得分:1)

尝试基于xpath文本的搜索

//span[contains(text(),'Show Details')]

它允许您在不关心空间的情况下找到跨度

答案 2 :(得分:1)

也可以使用class name

// driver is the selenium driver object. Need to make sure, compound names are not allowed
IWebElement span = driver.FindElement(By.ClassName("message-action-menu-text")); 

答案 3 :(得分:1)

请尝试这样的事情:

//*[@id='76']//span[@class='message-action-menu-text']