如何确定是否用WatiN加载图像

时间:2013-05-31 22:11:34

标签: image watin loaded

我正在使用WatiN,我需要确定是否已加载图像。在我的情况下,我得到页面上的红色X,但是当我使用...

 var image = WebBrowser.Current.Image(imageName);
 if (!image.Exists)
   {
     Assert.Fail(string.Format("Could not find '{0}' image on the page", imageName));
   }

... Assert不会失败,因为页面上确实存在图像的名称。但它没有加载。

有没有办法使用WatiN来评估使用JQuery或者什么东西告诉我何时获得红色X?我已经尝试过WebBrowser.Current.Image的每个方法和属性都无济于事。

2 个答案:

答案 0 :(得分:0)

如果我理解正确,您正在尝试按名称属性查找图像。 如果name属性为“image_name_attr”(您可以通过firebug验证),请使用以下命令:

 WebBrowser.Current.Image(Find.ByName("image_name_attr")); //constraint

如果您可以使用图像上的类名:

 WebBrowser.Current.Image(Find.ByClass("image_class_attr"));

答案 1 :(得分:0)

Assert没有失败,因为WatiN正在做它应该做的事情;它正在检查图像html元素是否存在。您需要检查的是服务器上是否存在该文件。

看一下这个问题/答案 - 过去我曾经使用过这种方法,而且效果很好。 Test to see if an image exists in C#