0

我正在使用 WatiN,我需要确定是否已加载图像。就我而言,我在页面上看到了红色 X,但是当我使用...

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

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

有没有办法使用 WatiN 来评估 JQuery 或在我得到红色 X 时告诉我的东西?我已经尝试了 WebBrowser.Current.Image 的所有方法和属性,但无济于事。

4

2 回答 2

0

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

看看这个 SO question/answer - 我过去使用过这种方法,它工作得很好。 测试以查看 C# 中是否存在图像

于 2013-06-03T19:51:34.337 回答
0

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

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

如果图像上有一个类名,您可以使用:

 WebBrowser.Current.Image(Find.ByClass("image_class_attr"));
于 2013-06-02T06:09:22.367 回答