RSpec: before и after хуки
Почему-то сталкиваюсь с такими тестами:
describe "#foo" do
before :each do
# ...
end
end
:each можно смело опускать: это поведение по умолчанию для before. Лучше так:
describe "#foo" do
before do
# ...
end
end
И несколько интересных фактов о before и after хуках:
-
before :eachиbefore :all— алиасы дляbefore :exampleиbefore :context. -
before :eachвыполняется перед каждым примером,it do...end.after :each— после. -
before :allвыполняется перед контекстом (context,describe).after :all— после. -
В
before :suiteнельзя задавать переменные экземпляра (instance var,@foo) -
Только в
before :eachможно мокать.
P. S. Ещё больше постов о программировании, тестах и культуре разработки у меня в Телеграме.