Hi, just wondering if anybody can tell me what’s wrong with this code:
the Watir gem
require ‘rubygems’
the Watir controller
require ‘watir’
set variables
validator = “http://validator.w3.org/”
url1 = “http://www.google.com”
url2 = “http://pingmag.jp/2008/01/17/chimpom/”
url3 = “http://www.google.com/”
open the IE browser
ie = Watir::IE.new
puts “Beginning validation”
ie.goto validator
ie.text_field(:id, “uri”).set(url1)
puts “Checking URL #1…”
ie.button(:value, “Check”).click
if ie.text.include? “This Page Is Valid”
puts “URL#1 validates!”
else
“URL#1 does not validate!”
end
ie.goto validator
ie.text_field(:id, “uri”).set(url2)
puts “Checking URL #2…”
ie.button(:value, “Check”).click
if ie.text.include? “This Page Is Valid”
puts “URL#2 validates!”
else
“URL #2 does not validate!”
end
ie.goto validator
ie.text_field(:id, “uri”).set(url3)
puts “Checking URL #3…”
ie.button(:value, “Check”).click
if ie.text.include? “This Page Is Valid”
puts “URL#3 validates!”
else
“URL #3 does not validate!”
end
puts "End of validation"
I get results for URL’s #2 and #3, only the ‘Checking URL…’ and ‘End
of validation’ messages.
On Jan 18, 8:54 am, Kate B. [email protected] wrote:
url1 = “http://www.google.com”
ie.text_field(:id, “uri”).set(url1)
end
puts “URL#2 validates!”
I get results for URL’s #2 and #3, only the ‘Checking URL…’ and ‘End
of validation’ messages.
Your are missing the “puts” before the “URL # does not validate”
[email protected] wrote:
On Jan 18, 8:54 am, Kate B. [email protected] wrote:
url1 = “http://www.google.com”
ie.text_field(:id, “uri”).set(url1)
end
puts “URL#2 validates!”
I get results for URL’s #2 and #3, only the ‘Checking URL…’ and ‘End
of validation’ messages.
Your are missing the “puts” before the “URL # does not validate”
If you had 200 pages to validate, you’d have to correct 200 lines of
code.
Consider this (untested, I don’t know Watir):
require ‘watir’
set variables
validator = “http://validator.w3.org/”
urls =[]
urls << “http://www.google.com”
urls << “http://pingmag.jp/2008/01/17/chimpom/”
urls << “http://www.google.com/”
open the IE browser
ie = Watir::IE.new
puts “Beginning validation”
ie.goto validator # maybe this should be in the block.
urls.each do|url|
puts “Checking " + url
ie.text_field(:id, “uri”).set(url)
ie.button(:value, “Check”).click
if ie.text.include? “This Page Is Valid”
puts url + " validates!”
else
url + " does not validate!" #!! This line needs a ‘puts’ !!
end
end
ie.close #or something like it
puts “End of validation”
Both the the list of urls and the code handling this list are now much
easier to maintain.
Regards,
Siep
Siep,
Wow! Had to add ‘goto validator’ to the block but otherwise worked a
treat… Thanks very much! 
the Watir gem
require ‘rubygems’
the Watir controller
require ‘watir’
set variables
validator = “http://validator.w3.org/”
urls =[]
urls << “http://www.catnic.com/”
urls << “http://pingmag.jp/2008/01/17/chimpom/”
urls << “http://www.google.com/”
open the IE browser
ie = Watir::IE.new
puts “Beginning validation”
urls.each do|url|
puts “Checking " + url
ie.goto validator # maybe this should be in the block.
ie.text_field(:id, “uri”).set(url)
ie.button(:value, “Check”).click
if ie.text.include? “This Page Is Valid”
puts url + " validates!”
else
puts url + " does not validate!" #!! This line needs a ‘puts’ !!
end
end
ie.close #or something like it
puts “End of validation”
I’m very new to Ruby (programming in general, actually) but I wonder if
there is a way to incorporate this into a webpage? This might not seem
much but is going to make my job as a tester a little easier!