检查是否显示并启用了某个元素
本文关键字:元素 启用 是否 显示 检查 | 更新日期: 2023-09-27 18:05:33
我正在检查我正在搜索的元素。显示并启用Xpath。像这样:
var element = Driver.FindElement(By.XPath("//a[contains(@href,'/Services')]"));
if (element.Displayed && element.Enabled)
{
Result.Pass(52);
}
else
{
Result.Fail(52);
}
返回显示(false)和启用(true),但实际的元素在网站本身是可见的。
当我在网站上检查元素时,它是这样的:
<a href="/Services">Services</a>
有什么建议吗?
更多HTML代码:
<ul class="list-unstyled">
<li class="footer-heading">my website</li>
<li><a href="/">Home</a></li>
<li><a href="/Search">Item search</a></li>
<li><a href="/Services">Services</a></li>
<li><a href="/Services/AreaGuides">Area guides</a></li>
<li><a href="/Services/Client">Client</a></li>
</ul>
Alecxe的答案也是正确的。除此之外,如果您想要一些通用的方法,您可以尝试以下操作:
与css:ul a[href$='Services']
使用基于xpath文本的搜索(如果文本是静态的,我更喜欢这样):
//a[text()='Services']
您可以使用By.LinkText()
定位器:
Driver.FindElement(By.LinkText("Services"));