对于我的RSpec测试,我会自动将数据文件与每个测试相关联。为了澄清,如果我的测试每个都需要一个xml文件作为输入数据,然后一些xpath语句来验证它们返回的响应,我想将xml和xpath外部化为文件,并让测试框架轻松地将它们与特定的测试相关联。通过使用测试的唯一ID作为文件名来运行。我试图得到这种行为,但解决方案不是很干净。我编写了一个辅助方法,它接受“description”的值并将其与 FILE 组合在一起,以创建一个唯一的标识符,该标识符被设置为其他实用程序可以访问的全局变量。唯一标识符用于关联我需要的数据文件。我必须将这个辅助方法称为每个测试的第一行,这很难看。
如果我有一个RSpec示例,如下所示:
describe "Basic functions of this server I'm testing" do
it "should give me back a response" do
# Sets a global var to: "my_tests_spec.rb_should_give_me_back_a_response"
TestHelper::who_am_i __FILE__, description
...
end
end
是否有一些更好/更清洁/更光滑的方式我可以获得每个测试的唯一ID,我可以使用它来关联数据文件?也许是我不知道的RSpec构建的东西?
谢谢你, - 比尔
答案 0 :(得分:0)
我刚刚了解了钩子之前和之后的漂亮全局。我可以在那里隐藏唯一的ID创建代码。它使事情变得更加清洁。我可能会选择这个解决方案,除非有更平滑的方式来获取每个测试的唯一ID。感谢