使用测试::单元::数据
问题描述:
我想创建一些数据驱动的API测试使用测试::单元的红宝石。最终的目的是从.csv文件中读取一系列测试用例。在寻找相当于testng的@dataprovider的东西时,我发现了一个名为Data的类,它看起来正是我所需要的。使用测试::单元::数据
http://www.rubydoc.info/github/test-unit/test-unit/Test/Unit/Data/ClassMethods
然而,当我试图创建一个测试案例,试图得到它的工作,我得到一个错误说
“initial_test.rb:4:<class:InitialTest>': undefined method
数据”为InitialTest:类(NoMethodError) “
代码我跑:
require "test/unit"
class InitialTest < Test::Unit::TestCase
data("true" => [true],
"false" => [false])
def test_true_is_true(data)
value = data
assert(false, "FAIL!")
end
end
我似乎无法找到任何在文档之外提到Data类。有没有人使用过这个课程?我错过了什么吗?
答
我不熟悉这个模块特别,但由于data
被定义为Test::Unit::Data
和Test::Unit::Data
一个实例方法是一个模块,这个工程:
class YourTest < Test::Unit::TestCase
include Test::Unit::Data
data(…)
end
这就是说,你要希望仔细看看您链接的文档,因为您的示例用法看起来像复制意大利面。
答
原来,问题是我使用的是旧版本的Ruby,它没有包含我尝试使用的类。更新到新版本解决了这个问题。
谢谢。我主要是想做一个基本的基础测试工作,所以我可以确保在尝试做更复杂的事情之前我已经有了语法。这是我第一次使用Test :: Unit的尝试。 – mleewing