我正在尝试使用以下HTML代码中的junit找到一个元素:
<div id="leftNav_updateProfile" class="leftNavBullet">
<ul>
<li>
<a href="http://my.naukri.com/Profile/edit?id=&altresid=">
<span class="gryTxt">• </span>
Snapshot
</a>
</li>
</ul>
</div>
我很困惑,因为我是selenium的新手,如何在此代码中找到元素。 让我试着解释实际情况,我想要实现的目标。在GUI上有一个Button&#34; Snapshot&#34;代码在上面。我试图使用xpath找到此按钮的元素:
driver.findElement(By.xpath("//[@id='leftNav_updateProfile']/ul/li/a[1]")).click();
但它不起作用。请帮我如何在这样的情况下找到元素。 我只希望通过Xpath实现它并不重要,任何方法都会有用。
答案 0 :(得分:0)
我发现CssSelector
更容易使用。你的情况:
driver.findElement(By.CssSelector("#leftNav_updateProfile ul li a")).click();
如果您是css选择器的新手,请点击以下几点:
标签按原样编写(参见示例中的ul
)
#
位于 id 之前(请参阅示例中的leftNav_updateProfile
)
.
位于类名之前(如果我们在您的示例中定位span
,我们会写.gryTxt
)
暗示后代 - 放置一个空格(例如ul li a
表示:a
是li
的后代,ul
的后代
进一步了解try this