ruby+watir--百度搜索示例

来源:互联网 发布:淘宝发货地在哪里修改 编辑:程序博客网 时间:2024/06/15 10:56

代码:URL、搜索内容、文本验证点都做成了变量;打开IE后,输入www.baidu.com,输入搜索内容“watir”,点击submit,查询出结果后,使用文本验证点Content去验证百度服务器返回内容。

复制代码
#-------------------------------------------------------------# # Demo test for the Watir controller. # # Simple Google test written by Jonathan Kohl 10/10/04. # Purpose: to demonstrate the following Watir functionality: # * entering text into a text field, # * clicking a button, # * checking to see if a page contains text. # Test will search Google for the "pickaxe" Ruby book. #-------------------------------------------------------------# # the Watir controller #require "rubygems"require "watir" #require "watir-classic"# set a variable test_site = "http://www.baidu.com/"   #search URL  google.comSearch_name = "watir"   #search name Content = "download.csdn.net"   #search results #open the IE browser ie = Watir::IE.new# print some comments puts "Beginning of test: Google search." puts " Step 1: go to the test site: " + test_site ie.goto test_site puts " Step 2: enter 'watir' in the search text field." #ie.text_field(:name, "wd").set "watir"      # "q" is the name of the search field ie.text_field(:name, "wd").set Search_name     #search nameputs " Step 3: click the 'baidu submit' button." ie.button(:type, "submit").click    # "submit" is the type of the Search button puts " Expected Result:" puts " A Google page with results should be shown. '#{Content} ' should be high on the list." puts " Actual Result:" if ie.text.include? "#{Content}" puts " Test Passed. Found the test string: '#{Content} '.Actual Results match Expected Results." else puts " Test Failed! Could not find: '#{Content} '." end puts " End of test: Google search."puts " Last Step Close IE!!"
ie.close
复制代码

上面脚本是从http://www.51autotest.com论坛上找到的,代码中默认是google搜索,我改回百度的啦。 另外代码结尾中没有加入IE关闭的代码,要完善一些,要加入的ie.close。

返回结果:

复制代码
>ruby baidu.rbBeginning of test: Google search. Step 1: go to the test site: http://www.baidu.com/ Step 2: enter 'watir' in the search text field. Step 3: click the 'baidu submit' button. Expected Result: A Google page with results should be shown. 'download.csdn.net ' should be high on the list. Actual Result: Test Passed. Found the test string: 'download.csdn.net '.Actual Results match Expected Results. End of test: Google search. Last Step Close IE!!>Exit code: 0
复制代码

一开始运行上面脚本时,提示:“ruby Watir::IE (NameError)”的错误,然后再脚本中增加require"rubygems"和require "watir-classic",问题虽然解决,但是出现了其他的错误。最后通过gemlist命令查看各个的版本号,发现watir、commonwatir、watir-classic、win32-process的版本高较高。

解决:

watir版本和commonwatir的版本要一致,都降低到3.0.0
watir-classic版本降低到3.0.0
win32-process版本降低到0.6.6

示例:

复制代码
C:\ruby>gem uninstall watir -v 4.0.2Successfully uninstalled watir-4.0.2-x86-mingw32C:\ruby>gem install watir -v 3.0.0

gemuninstall watir-classic -v 3.3.0

gem installwatir-classic -v 3.0.0

gemuninstall win32-process -v 0.7.0

gem installwin32-process -v 0.6.6

复制代码

看样子学习ruby+watir+webdriver并非1天2天的事情,加油!

0 0
原创粉丝点击