代码示例:
以下是关于Windows下Ruby+Watir自动化测试的环境搭建及数据读取的详细内容:
环境搭建
-
安装Ruby
- 推荐使用RailsInstaller工具包进行安装,它会自动配置环境变量。可从Install Ruby on Rails – Railsinstaller.org -下载,安装时勾选配置git和ssh的选项。
- 安装完成后,在命令行输入
ruby -v,若显示Ruby版本信息,则安装成功。
-
安装Watir
- 在命令行输入
gem install watir进行安装。由于国内网络环境问题,可能需要更换RubyGems的源。可先使用命令gem sources -l查看当前源,再用gem sources --remove https://rubygems.org/移除默认源,接着添加国内源gem sources -a https://ruby.taobao.org/,最后再次安装Watir。 - 安装完成后,使用
gem list查看已安装的gem包,确认Watir及相关包已安装。
- 在命令行输入
-
测试环境搭建是否成功
- 在文本编辑器中新建一个
test.rb文件,输入以下代码:
require "watir" puts "Open IE..." ie = Watir::IE.new ie.goto("http://www.baidu.com/") puts "IE is opened - enjoy it :)"- 保存文件后,在命令行输入
ruby test.rb,若程序自动打开IE浏览器并打开百度页面,则说明环境搭建成功。
- 在文本编辑器中新建一个
数据读取
以下是使用Ruby+Watir读取CSV文件数据并进行测试的示例代码:
require 'watir'
require 'csv'
# 打开CSV文件
CSV.foreach("data.csv", headers: true) do |row|
# 打开浏览器
browser = Watir::Browser.new :chrome
browser.goto("http://example.com/login")
# 读取CSV文件中的用户名和密码
browser.text_field(id: "username").set(row["username"])
browser.text_field(id: "password").set(row["password"])
# 点击登录按钮
browser.button(id: "login_button").click
# 验证登录是否成功
if browser.text.include?("Welcome")
puts "Login successful for #{row["username"]}"
else
puts "Login failed for #{row["username"]}"
end
# 关闭浏览器
browser.close
end
在上述代码中,data.csv文件应包含两列,分别是username和password,每行数据代表一个测试用例的用户名和密码。代码会逐行读取CSV文件中的数据,然后在浏览器中打开登录页面,输入用户名和密码并点击登录按钮,最后根据页面内容判断登录是否成功,并输出相应的结果。
注意事项
- 在安装过程中,需确保Ruby和gem的版本与Watir兼容。如果出现版本不兼容的问题,可尝试降级Watir及相关gem包。
- 在编写测试脚本时,需根据实际的Web应用页面元素定位方法进行调整,如使用
id、name、class等属性定位元素。 - 数据读取部分可根据实际需求选择不同的数据存储格式,如Excel、数据库等,并使用相应的Ruby库进行读取。
以上内容仅供参考,可根据实际情况进行调整和优化。
更多技术文章见公众号: 大城市小农民

1249

被折叠的 条评论
为什么被折叠?



