如何在cucumber中使用watir webdriver测试404错误?

如何在cucumber中使用watir webdriver测试404错误?,cucumber,http-status-code-404,watir-webdriver,Cucumber,Http Status Code 404,Watir Webdriver,如何测试cucumber中的404错误(未找到页面)?例如,我有一个包含100张图片的页面,我想测试是否所有图片都可见。我想检查一张或多张图片是否存在404错误。您可以执行以下操作: require 'watir-webdriver' b = Watir::Browser.new b.goto "apod.nasa.gov/" b.execute_script("return (typeof arguments[0].naturalWidth!=\"undefined\" &&

如何测试cucumber中的404错误(未找到页面)?例如,我有一个包含100张图片的页面,我想测试是否所有图片都可见。我想检查一张或多张图片是否存在404错误。

您可以执行以下操作:

require 'watir-webdriver'
b = Watir::Browser.new
b.goto "apod.nasa.gov/"
b.execute_script("return (typeof arguments[0].naturalWidth!=\"undefined\" && arguments[0].naturalWidth>0)", b.image(name: 'imagename1'))

有关更多信息,请参见

如果您获取图像URL(使用watir或),您可以使用发出请求,然后检查响应代码

require 'watir-webdriver'
require "open-uri" 

b = Watir::Browser.new
b.goto "http://www.iana.org/domains/special"

urls = b.images.collect(&:src)               # harvest image srcs
urls << "http://www.foo.com/foo.gif"         # example of a 500 error

urls.each do |url|
  begin
    open(url) do |f|
      puts "#{f.base_uri} - #{f.status}"
    end
  rescue => e
    puts "#{url} - #{e}"
  end
end
需要“watir webdriver”
需要“打开uri”
b=Watir::Browser.new
b、 后藤“http://www.iana.org/domains/special"
url=b.images.collect(&:src)#获取图像src
网址e
放置“#{url}-#{e}”
结束
结束

Thx,但这不是我需要的。我不想描述每一张图片,我只想检查页面上是否有所有图片。