存储Cucumber测试变量的最佳做法是什么?
我正在使用Cucumber和Capybara来测试Java应用程序。
在应用程序中,我需要将许多类型的用户和其他数据传递到我的Capybara步骤定义中。所以我的问题是存储这些变量/用户ID的最佳做法是什么?
我确实有一些变量(@instance_variabless)我已经存储在env.rb文件中。
但有更干净/优雅的方式吗?就像有一个专用文件,我可以调用的变量,如果是这样的话,如何设置这样的文件?
请提供解决方案的示例?
答案 0 :(得分:0)
您可以在hooks.rb
文件中使用hooks进行设置和拆卸:
@user_ids_and_passwords = YAML.load(File.open('features/config/users.yml'))
@my_heavy_object = HeavyObject.new
@my_heavy_object.do_it
at_exit do
@my_heavy_object.undo_it
end
AfterConfiguration do |config|
puts "Features dwell in #{config.feature_dirs}"
@instance_variable = 'my variable'
end
Before('@some_features') do
@feature_instance_variable = 'something else'
end