这是一个简单的问题。我有黄瓜步骤,例如:
Given /We have the test environment/ do
@user = # Create User model instance
@post = # Create Post model instance
# etc...
end
在Then步骤中,我使用自己的类,它们简化了测试过程:
Then /all should be fine/ do
# MyValidatorClass has been defined somwhere in features/support dir
validator = MyValidatorClass.new
validator.valid?.should be_true
end
在 MyValidatorClass 实例内部,我处理上述实例变量@user、@post 等。
从 MyValidatorClass 类实例访问 Cucumber 变量的最佳和最简单的方法是什么?
class MyValidatorClass
def valid?
@post
@user
end
end
现在我已经手动将所有参数传递给 MyValidatorClass 实例:
validator = MyValidatorClass.new @user, @post
但我认为这个目的是不好的。我需要更透明的东西,因为我们使用的是 Ruby,这就是为什么!
做这个的最好方式是什么?