我需要爲每次測試運行重新創建一個數據庫。我正在使用Robotium
爲我的應用程序自動執行測試,因此每個測試都會延伸到ActivityInstrumentationTestCase2
。我發現的是,我可以使用RenamingDelegatingContext
來模擬新的Context
。但只要我從ActivityInstrumentationTestCase2
延伸,我不能使用ActivityUnitTestCase
類中的setActivityContext()
。可能是我走錯了路。請建議另一種可能的方式來重新創建數據庫,如果有的話。非常感謝你。如何爲每個測試運行重新創建一個數據庫?
2
A
回答
4
我嘗試了一段時間來使用renamingdelegatingcontext,但失敗了,因爲據我所知,在ActivityInstrumentationTestCase2中使用它我不得不嘲笑我不能做的應用程序,因爲我們的應用程序實際上擴展了應用程序, onCreate中的特定代碼,它變成了一個可怕的問題。
然後我把每一次運行之間簡單的方法,只是clearedthe數據庫(以及共享偏好和餅乾)
context.deleteDatabase(DATABASE_NAME)
我發現這(surpisingly)不能太慢(相比沒有測試無論如何,都可以通過GUI進行)。您可能會發現,您需要手動調用您的應用程序,然後根據應用程序的編碼方式手動創建每個測試,以便正確設置它,但這很容易實現。
哦,只是說我以前把所有這些代碼放在一個新的測試類中,它擴展了ActivityInstrumentationTestCase2,所以它在setup/tearups中自動發生。
相關問題
- 1. 如何創建一個新的數據庫測試運行之前?
- 2. 與遺留數據庫測試django應用程序 - 如何避免每個測試重新創建數據庫?
- 3. 如何重新部署,在每次測試運行時重新創建數據庫
- 4. 爲什麼Django要求我創建一個mysql數據庫來運行測試?
- 5. 每個數據庫行NUnit測試?
- 6. Django單元測試無需每次運行時創建測試數據庫
- 7. IPhone ios 5,在每個模擬器上重新創建數據庫運行?
- 8. 如何設置teamcity爲每個構建運行android測試
- 9. 將測試數據庫重建爲生產測試數據庫
- 10. 如何重新創建一個Django項目的數據庫?
- 11. 如何創建一個單元測試,更新記錄到數據庫在asp.net
- 12. 創建一個每個值只有一行的新數據框
- 13. VSTS加載測試每個數據行一次運行
- 14. 創建一個新的Maven目標來運行測試茉莉
- 15. 爲數據庫中的每個表格創建一個類
- 16. 創建爲每行一個新的div(及其內容)數據庫中的
- 17. 如何在每次測試之前讓Rails測試數據庫重建?
- 18. 如何根據開發數據庫模式重新創建測試夾具
- 19. Morphia:爲每個數據庫創建新的Morphia實例?
- 20. 如何創建一個MySQL數據庫
- 21. 如何創建一個xml數據庫?
- 22. 使Spring Boot重新創建測試數據庫
- 23. Monotouch SQLite會每次創建一個新的數據庫嗎?
- 24. 我應該爲每個斷言創建一個新的測試方法嗎?
- 25. Django避免創建一個測試數據庫
- 26. 如何建立一個乾淨的測試機爲每個測試
- 27. 如何測試數據庫行爲?
- 28. 單元測試運行.sql腳本到SQL創建數據庫
- 29. 強制TestNG爲每個方法測試創建新實例
- 30. 我需要幫助爲每個數據庫錶行創建一個新的WPF數據網格