2015-12-09 52 views
0

美好的一天。 我試圖編寫一些Spring端點的功能測試(Spring不是這裏的關鍵),它使用我的REST應用程序作爲黑盒並嘗試通過http連接到它。jdbc連接之間物化視圖刷新結果的一致性

算法如下:

  1. 應用與空的測試數據庫
  2. 測試開始時,在@Before方法它填充有所需數據的數據庫
  3. 測試執行一個HTTP請求到應用,並接收開始答案
  4. 測試將給定響應與預期響應進行比較。
    幾乎所有的測試都能正常工作,但在一種情況下,應用程序使用物化視圖,當測試試圖從端點接收數據時,返回的數據幾乎爲空。當我在@Before方法中創建一個REFRESH MATERIALIZED VIEW SQL時,也會發生這種情況。但是,當我在pgadmin(在相同的連接)中執行它時,一切正常。

我想,這是因爲應用程序首先通過jdbc連接(當數據庫和視圖爲空時)以及測試的第二個連接刷新物化視圖時,它無法看到其中的更改。

我對不對?

而我的問題是:我應該使用什麼算法(我不能更改應用程序查詢並添加刷新命令)來解決此問題? 謝謝

回答

0

對不起,這是由於在我的代碼後過濾建議的錯誤