【发布时间】:2013-10-29 10:02:28
【问题描述】:
我有一个非常基本的问题,我无法找到任何解决方案。
所以我正在使用带有 testunit 的 Watir Webdriver 来测试我的 Web 应用程序。 我有一个测试方法,我想针对多组测试数据运行它。
虽然我当然可以使用旧的循环技巧来运行它,但这会显示为只运行了 1 个测试,这不是我想要的。
我知道在 testng 我们有 @dataprovider,我正在 testunit 中寻找类似的东西。
任何帮助!
这是我目前所拥有的:
[1,2].each do |p|
define_method :"test_that_#{p}_is_logged_in" do
# code to log in
end
end
这很好用。但我的问题是我将如何以及在何处创建可以循环访问的数据。我正在从 excel 中读取我的数据,说我有一个从 excel 中获得的哈希列表,例如 [{:name =>abc,:password => test},{:name =>def,:password => test}]
当前代码状态:
class RubyTest < Test::Unit::TestCase
def setup
@excel_array = util.get_excel_map //This gives me an array of hash from excel
end
@excel_array.each do |p|
define_method :"test_that_#{p}_is_logged_in" do
//Code to check login
end
end
我正在努力运行循环。我在类声明行收到一条错误消息,提示“nil:NilClass (NoMethodError) 的未定义方法‘每个’”
【问题讨论】:
-
我还在学习 testunit,所以目前还没有我尝试过或可以分享的代码,想在开始之前获得基本的想法
-
我至少会开始......然后问你需要继续的问题。这是 StackOverflow 的传统。你显然有问题,你一定尝试过什么……否则你没有解决这个问题。
-
用代码编辑问题
-
无论数据是如何存储的,然后收集已登录的用户并查看该登录是否存在。
-
@Pratik,您是否已经有了从 excel 中提取数据的代码?换句话说,您是否只是在寻找如何遍历该数组并从中定义测试?
标签: ruby watir-webdriver testunit