我有一个可点击的图片,它在FireFox中不可见。我的意思是,没有图像,但是有一个元素(它是可点击的)。 FindElement(by).Displayed 返回true但仍然没有图片。 问题是如何检查,此图像是否可见?
另外,我在html标题中发现了一个错误(原因,为什么图像不可见),也许有办法用html标题检查图像的存在?
public bool IsFileIconDisplayed()
{
return IsElementDisplayed(By.XPath("//*[@class='SomeClass']/img"));
}
protected bool IsElementDisplayed(By by)
{
return FindElement(by).Displayed;
}
答案 0 :(得分:4)
图像的样式是否将宽度和高度设置为预设值?
如果不是,您可以在Javascript中查询图像元素的客户端宽度和高度属性。
document.getElementById(<webElement>).getClientRects()[0].width
document.getElementById(<webElement>).getClientRects()[0].height
或只是
document.getElementById(<webElement>).naturalWidth
使用JavascriptExecutor,您应该能够将这些值绘制到Java / C#代码中,并根据宽度/高度来加载/未加载图像。
答案 1 :(得分:0)
此主题包含有关如何检查图像可见性的重要信息(最关注Dave Hunt提供的答案)