我有许多使用ActionDispatch::IntegrationTest
Rails 4 应用程序编写的集成测试。setup
我正在尝试在每个测试运行之前向每个和teardown
我想要调用的每个添加几行,而不覆盖每个测试特定的setup
和teardown
回调。
所以基本上,我想做类似以下的事情:
class ActionDispatch::IntegrationTest
setup do
DatabaseCleaner.start
super
end
teardown do
Warden.test_reset!
DatabaseCleaner.clean
super
end
end
我不希望这些覆盖更具体的设置,而是希望它们之前运行。所以我希望这个设置在上面写的基础之后运行:
class Authorized < ActionDispatch::IntegrationTest
setup do
@user = create(:user)
sign_in(@user)
end
test 'some stuff' do
# Integration test here
end
end
我目前收到上述错误:
NoMethodError: super called outside of method
所以我想知道正确的方法是什么。任何建议将不胜感激!提前致谢