2010-03-23 71 views

回答

6

是的。你需要做的第一件事就是决定你想使用哪种硒。

  • 您可以使用Selenium IDE,其中测试由HTML表组成。
  • 您可以使用Selenium RC,您可以使用编程语言(例如C#,Java,PHP,Ruby等)编写测试。

后者稍微复杂一点,但如果你想要真正的权力,你将使用该方法。

然后,您需要了解如何查找页面上的所有图像。 //img是一个很好的XPath查询使用。有关Xpath的详细信息,请参阅w3schools,特别是this page

然后你就会想找到与图片alt属性://img[@alt]

一种方法是计算有多少图像有,并与ALT属性减去的数量。

+1

经过一番阅读后,我发现您可以使用xpath表达式找到所有没有ALT属性的图像// img [not(@alt)] – bananmuffins 2010-03-23 11:28:11

2

你也可以在WebDriver(即将成为Selenium 2)中做到这一点。以下示例适用于TestNG/Java,但其他客户端语言可用。

List<WebElement> images = driver.findElements(By.xpath("//img[not(@alt)]")); 
assertEquals(images.size(), 0); 

更多的反馈,你也可以使用类似下面的图像的输出细节没有ALT属性:

for(WebElement image : images) { 
    System.out.println(image.getAttribute("src")); 
} 
0

我们有一个类似的测试,但我们抓住了页面的HTML和解析出具有正则表达式的图像,然后在第二个正则表达式中寻找alt标签。我没有做过速度测试,但我认为它可能比Xpath路线更快。