我正試圖編寫一個集成/單元測試,其中一個異常應用到一個DAO執行保存後 - 爲了驗證回滾行爲。我的想法是創建一個Spring AOP方面 - 並將@AfterReturning建議應用於DAO上的「保存」方法。如何測試回滾是否按預期工作?
DAO已經通過@Transactional建議進行了代理。
這似乎是正確的路要走嗎?
到目前爲止,我正在嘗試使用Spring ProxyFactory--在單元測試中代理DAO。
E.g.
ProxyFactory pf = new ProxyFactory(new MyFaultInjectingAspect());
pf.setTarget(myDao);
MyDao proxiedDao = (BookmarkDao) pf.getProxy();
謝謝。
你有交易的機制失效,因此導致回滾?你有沒有辦法讓你的測試成立這個失敗? –
這個問題涉及如何創建該機制。我正在考慮使用一個方面來注入導致失敗的異常。 –