如何關閉具有RSpec 2的規格(或牛排方案)的交易裝置? 我嘗試了一些在網上找到的東西,但沒有取得任何成功。使用RSpec 2關閉一個規格的交易裝置
這導致未定義的方法異常。
describe "MyClass without transactional fixtures" do self.use_transactional_fixtures = false ... end
這只是什麼也不做(交易型燈具仍在):
describe "MyClass without transactional fixtures" do RSpec.configure do |config| config.use_transactional_fixtures = false end ... end
我還能嘗試一下呢?
它真的有線需要。因爲你不知道你的數據庫裏有什麼。 – shingara 2010-10-04 09:32:53
我希望你的代碼也不是這樣;-)但是嚴重的是,對於某些測試場景,你必須禁用事務性的裝置。例如,就像我的情況一樣,測試思維獅身人面像。獅身人面像需要從「外部」更新搜索索引。所以它必須在特定的時間知道數據庫內容。 – Zardoz 2010-10-13 16:49:17
只需注意一點;至少在我的環境中(Rails4 rspec 2),如果你出於某種原因在你的任何rspec文件中包含rspec/rails_helper,它將在套件或後續文件中再次以事務方式運行後導致任何測試。 – 2015-09-16 13:47:53