簡體   English   中英

RSpec - 如何測試數據庫視圖?

[英]RSpec - How to test a database view?

我有一個支持數據庫視圖的類。 我正在使用FactoryGirl來測試這個,所以我按照正常步驟創建一個user實例,如下所示:

before(:each) do
  @user = FactoryGirl.create(:user)
end

然后我檢查視圖計數:

Balance.all.count   # It is returning 0, it should be returning 1

我對數據庫視圖的理​​解是,在事務提交到數據庫之后才會更新。 我有一個使用NHibernate的背景,為了從數據庫中獲取更新的值,我會做類似的事情:

Session.Flush();

這樣我就可以查詢數據庫視圖並獲取更新的值,但是后來仍然會回滾或提交我的事務。

有沒有辦法在ActiveRecord中執行此操作? 或者有沒有辦法將我的更改提交到數據庫並清理它? 我不想關閉所有測試的事務,只能測試這個特定的類。

let!(:user) { FactoryGirl.create(:user) }

您可能還想查看database_cleaner gem。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM