上下文:我目前有一些使用selenium-webdriver
标签为:qa
的水豚规格。由于我需要花一些时间运行默认运行rspec
的程序,因此我想将它们排除在外。为此,我在config.filter_run_excluding :qa
中加入了spec_helper.rb
。目前,此功能正在按预期运行。
期望的行为:默认情况下,我希望排除:qa
标签。但是,我想在运行:qa
时包括所有rspec -t ~all
规范。当前,这是另一个应用程序中的行为。在另一个应用程序中,此行为由以下内容覆盖。
unless config.filter_manager.exclusions.rules[:all]
config.filter_run_excluding :functional_test
end
由于某种原因,这不适用于开发中的当前应用。我上面描述的方式是它需要工作的方式,因为相同的行为需要在各个应用程序中工作。任何帮助将不胜感激。
答案 0 :(得分:0)
指定-t ~all
表示要运行没有元数据标签all
的所有内容,并将其设置为filter_manager.exclusions.rules
。通过告诉测试程序不要使用all
元数据运行测试来设置测试以运行所有测试是很奇怪的,但是要做到这一点,您应该做的与其他应用相同。
RSpec.configure do |config|
unless config.filter_manager.exclusions.rules[:all]
config.filter_run_excluding :qa
end
end
如果这对您不起作用,那么您需要提供一个测试示例,以便我们可以准确地看到要为其设置的元数据以及其余的RSpec配置,以便我们可以看到可能有冲突的地方。