The before and after hook documentation on Relish仅显示在before(:suite)
之前调用before(:all)
。
我应该何时使用另一个?
答案 0 :(得分:62)
在before(:all)
块中定义RSpec.configure
时,会在每个顶级示例组之前调用before(:suite)
,而RSpec.configure do |config|
config.before(:all) { puts 'Before :all' }
config.after(:all) { puts 'After :all' }
config.before(:suite) { puts 'Before :suite' }
config.after(:suite) { puts 'After :suite' }
end
describe 'spec1' do
example 'spec1' do
puts 'spec1'
end
end
describe 'spec2' do
example 'spec2' do
puts 'spec2'
end
end
代码块只调用一次。
以下是一个例子:
Before :suite
Before :all
spec1
After :all
Before :all
spec2
After :all
After :suite
输出:
{{1}}
答案 1 :(得分:0)
您也可以使用before(:suite)在任何代码之前运行代码块 示例组正在运行。这应该在RSpec.configure
中声明
http://rubydoc.info/github/rspec/rspec-core/RSpec/Core/Hooks