如何在页面中获取一个元素,该元素是没有 id 或 Name 的图像,用于 Selenium 自动化测试?

How do I get an element in a page which is an image without id or Name for Selenium automation testing?

提问人:Rajeesha R 提问时间:9/1/2023 最后编辑:Black catRajeesha R 更新时间:9/5/2023 访问量:33

问:

<a class="text-neutral-400 flex items-center gap-2 font-light px-3 py-2 text-[17px] font-[600] hover:bg-neutral-700 hover:no-underline active:bg-neutral-600 rounded-lg text-base" href="/leads"><span class="text-[40px]"><svg stroke="currentColor" fill="none" stroke-width="2" viewBox="0 0 24 24" aria-hidden="true" height="1em" width="1em" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" d="M20 7l-8-4-8 4m16 0l-8 4m8-4v10l-8 4m0-10L4 7m8 4v10M4 7v10l8 4"></path></svg></span><span class="hidden group-hover:flex">My Leads</span></a>

这是我想 chk onClick 的元素的详细信息。但是我在这里找不到 id 或名称来获取元素。如何获取元素?

我检查了一个元素,这是一个图像,在单击它时,页面应该转到一个特定的屏幕,我如何通过名称或 id 识别这个元素?

html selenium-web驱动程序

评论

0赞 Apodemus 9/1/2023
我想你忘了添加上述细节。您可以编辑问题并添加代码示例。
0赞 Rajeesha R 9/1/2023
我添加了代码示例,但没有与我的帖子一起显示。是因为我里面有一些标签吗?
0赞 Black cat 9/1/2023
如果元素没有属性,则无法用它来标识它。

答:

0赞 Dani Danger 9/2/2023 #1

看起来 svg 图像被包裹在锚标记中。这意味着它是您最可能需要单击的锚点(链接)。我会使用以下cssSelector来识别它:

a[href=‘/leads’]

评论

0赞 Rajeesha R 9/5/2023
是的,我用xpath解决了它。谢谢
0赞 Rajeesha R 9/5/2023 #2

是的。我用路径解决了这个问题 driver.findElement(By.xpath(“//a[@href='/leads']”))