带特性标志重新运行Ruby测试套件



我有一个有20个rspec测试的类,无论我的主要逻辑是否通过功能标志,结果应该是完全相同的。

我想知道测试这个套件的最好方法是什么,以便在Jenkins上可以测试两个方向?我想避免再次复制粘贴20个测试,只需添加另一行:

featureFlag.enabled = True在测试逻辑之前。

这可能吗?由于

这取决于您使用哪个测试框架?RSpec吗?小型试验?

在RSpec中,你可以使用一个共享的例子

RSpec.shared_examples "some example" do |flag|
before do
featureFlag.enabled = flag
end
it "works with feature flag '#{flag}'" do
expect(something).to be true
end
end
RSpec.describe SomeClass do
include_examples "some example", true
include_examples "some example", false
end

在Minitest中,你可以直接使用模块。

https://relishapp.com/rspec/rspec-core/docs/example-groups/shared-examples

最新更新