Ruby语言是一款非常有用的编程语言。在实际的使用中,我们需要不断的从中积累经验,来帮助我们提高编程能力。使用Ruby自动化驱动制作IE测试程序时,很多人可能很快就会想到使用watir,其实net/http也提供强大的IE支持能力,以下例子说明,如何使用net/http来实现数据驱动测试#t#
Ruby自动化驱动代码示例:
- require 'win32ole'
#使用win32ole可以操作excell文件,
使数据保存在excell文档中 - require 'net/http'
- excel = WIN32OLE.new("excel.application")
# 定义一个excel对象 - excel.Visible = false
- excel.WorkBooks.Open("d:\\default.xls")
#打开excel文件 - [1,3].each do |j|
#循环读取excel文件的sheet,这里的有3个sheet - sheet = "Action" + j.to_s #sheet的名称
- excel.WorkSheets(sheet).Activate
#激活sheet - rows = excel.WorkSheets(sheet).
UsedRange.Rows.Count
#取得每个sheet的行数 - (2..rows).each do |i|
#循环读取各个sheet的数据,***行为数据类型
,真实数据从第二行开始 - url = excel.Cells(i,1).value
- urlChar = excel.Cells(i,2).value
- res = Net::HTTP.get_response(URI.parse(url))
#得到服务器的返回的数据 - puts "价格正序排序状态" + i.to_s
- puts url + " " + urlChar
- puts res.body.include?(urlChar)
#得到是否取得了想要的数据
ok,通过以上的Ruby自动化驱动代码可验证,每个页面从服务器返回的数据是否是正确的