我剛剛發現通過從BEGIN TRAN t1
ROLLBACK TRAN t1
對中調用存儲過程來測試存儲過程的想法。
我有點害怕這個。 這是一種常見的做法嗎?它可靠嗎?
我的目標是要快速測試存儲過程,讀取和更新2個數據庫(相同的服務器)。 SP不會執行任何截斷,但會使用與INSERT.. OUTPUT
語句結合的表變量。
音量會很低(少於1000行受影響)。 感謝使用事務回滾進行測試
1
A
回答
2
有幾件事情可能出錯:
- 的PROC可以做自己的事務管理
- 它可以執行非事務性之類的語句
CREATE DATABASE
- 它可能有一個錯誤,導致事務自動回滾。如果PROC然後繼續以某種方式運行時,它可能會寫東西事務
- XACT_ABORT之外可能使用不一致,導致前面提到的效果
在一般情況下,這是一個很好的技術,但。
截斷交易,順便說一句。
相關問題
- 1. 如何在使用tSQLt進行測試時回滾事務
- 2. 如何在使用Symfony2進行功能測試時回滾事務
- 3. 如何在symfony2中使用phpUnit進行測試時回滾任何事務
- 4. Junit測試在事務後不回滾
- 5. 在cucumber-jvm測試中回滾事務
- 6. JUnit測試總是回滾事務
- 7. Spring集成測試事務不回滾
- 8. 春季測試事務回滾問題
- 9. Spring JDBC測試上的事務回滾
- 10. 使用PostgreSQL在SQLAlchemy測試中回滾數據庫事務
- 11. 使用apache駱駝測試回滾事務
- 12. 事務自動進行回滾
- 13. 使用DatabaseCleaner和事務進行快速測試。如何調試?
- 14. 在春季測試中未回滾事務以進行刪除操作
- 15. 春季測試:執行測試方法後未回滾的事務
- 16. 使用事務日誌回滾事務
- 17. 使用jdbcTemplates進行@Transaction註釋的彈簧事務回滾
- 18. 使用RSpec測試並行事務
- 19. 測試自定義插件的portlet:BeanLocatorException和事務回滾的服務測試
- 20. 關於使用qunit.js進行事件回調測試的查詢
- 21. 如何在JUnit中使用Spring測試服務時回滾數據庫事務?
- 22. Spring @transactional在使用JUnit4進行測試時未啓動事務
- 23. 使用存根服務進行測試
- 24. 服務中使用$ httpBackend進行測試
- 25. 事務回滾?
- 26. 事務回滾
- 27. 回滾事務
- 28. 使用自動測試進行測試
- 29. Spring Boot @WebIntegrationTest和TestRestTemplate - 是否可以回滾測試事務?
- 30. Hibernate:如何在JUnit測試之後回滾事務?
我經常這樣做,並且從來沒有遇到過問題。 – JohnD
@JohnD:謝謝。我只是「貶低」這個,看起來像一個不錯的時間表 –
就目前而言,是的。它只是表明存儲過程不會拋出錯誤。這並不表明他們做對了。如果他們什麼都不做,他們會通過這些測試。 –