require "test/unit"
class MyTest < Test::Unit::TestCase
test "one plus one should be equal to two" do
assert_equal 1 + 1, 2
end
end
# Error: wrong number of arguments (1 for 2) (ArgumentError)
您必须使用此代码:
require "test/unit"
class MyTest < Test::Unit::TestCase
def one_plus_one_should_be_equal_to_two
assert_equal 1 + 1, 2
end
end
这对我来说似乎不太可读 是否可以在纯Ruby脚本中使用“声明性”语法?
谢谢!
答案 0 :(得分:3)
根据Rails的API,test
方法在ActiveSupport::Testing::Declarative 模块中定义,并使用一种元编程来添加新的测试方法。
如果您尚未安装Rails gem,则只需安装activesupport gem:
gem install activesupport
现在您只需要它并让您的班级继承自ActiveSupport::TestCase
这是完整的代码:
require "test/unit"
require "active_support"
class MyTest < ActiveSupport::TestCase
test "one plus one should be equal to two" do
assert_equal 1 + 1, 2
end
end