Когда в блоке RSpec.configure задано значение before (: all), оно вызывается перед каждой группой примеров верхнего уровня, а код кода 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
Ответ 2
Вы также можете использовать до (: suite) для запуска блока кода перед любым группы примеров. Это должно быть объявлено в RSpec.configure