Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xpath 如何在span类中单击动态元素?Selenium Web驱动程序_Xpath_Dynamic_Selenium Webdriver_Automated Tests_Firepath - Fatal编程技术网

Xpath 如何在span类中单击动态元素?Selenium Web驱动程序

Xpath 如何在span类中单击动态元素?Selenium Web驱动程序,xpath,dynamic,selenium-webdriver,automated-tests,firepath,Xpath,Dynamic,Selenium Webdriver,Automated Tests,Firepath,大家好,在这个场景中我遇到了一个问题。请给我一些建议 尝试使用此xpath(无效): ./*[@id='76']/div/div[3]/span[1]/span 请帮帮我 注意:“显示详细信息”链接是可单击的,它们具有不同的ID,黄色标签中的链接是无法单击的 我感谢所有愿意分享他们对这方面想法的人 谢谢 尝试基于xpath文本的搜索 //span[contains(text(),'Show Details')] 它允许您在不考虑空格的情况下查找跨度也可以使用类名 // driver is th

大家好,在这个场景中我遇到了一个问题。请给我一些建议

尝试使用此xpath(无效):

./*[@id='76']/div/div[3]/span[1]/span

请帮帮我

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

我感谢所有愿意分享他们对这方面想法的人
谢谢

尝试基于xpath文本的搜索

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

它允许您在不考虑空格的情况下查找跨度

也可以使用
类名

// 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")); 

请尝试以下方式:

//*[@id='76']//span[@class='message-action-menu-text']
您可以尝试以下操作: xpath=(//span[text(),'Show Details'])[76] 正如您所说的“Show Details”的id不断变化,那么您必须将当前id替换为76


这个xpath有望为您工作。

这将不适用,因为页面有许多操作菜单文本。感谢OP中没有提到有多个类名相同的类。此外,这只是一个解决方案,如果您有多个元素,我们可以使用索引。不向元素提供ID属性不是设计页面和事件的正确方法,这是不可接受的:)。张贴网页的HTML而不是图片,这可能会得到更多的回应。是的,谢谢你的建议。我将尝试再次编辑我的线程。非常感谢您的回复我已经试过了,但仍然没有发生异常。我想,因为文本有相同的标签,它们只是在ID上有所不同,比如75、76、77。。感谢您回答bro。您能否将图像替换为
html
?是否有办法找到
显示详细信息链接上方显示的文本(如
员工545454…
)?因为我没有在HTML中看到它。@是的,单击“显示详细信息”链接按钮将显示此图像。请参阅我的原始帖子以了解更新的详细信息Buddy,让我这样说。为了在UI中单击显示详细信息的链接,我们需要知道需要单击哪个链接。从第一幅图中,我们可以说是Show Details[2],因为我们用一些测试数据来标识它,比如
Employee…
。所以,为了准确地获得要单击的ShowDetails链接,我们需要与该链接关联的测试数据。如果可能,在不打开show details链接的情况下获取
员工5454..
的HTML?@Sham不确定我是否正确获取您的信息,但我将尝试在上面发布整个HTML。谢谢你!此元素位于框架内hi@Sourav感谢您的回复。虽然这似乎不起作用。嗨,我也试过了,但同样的结果是找不到任何元素。谢谢你的帮助(