我想添加測試到一個相當大的android項目。所以,我可以將測試添加到片段的活動中,並讓它們正確運行。 但在我的情況下,大多數片段在啓動時會啓動一個Runnable進入一個新的線程。此線程連接到API,請求和解析數據,並將它們返回給調用片段中的處理程序。 現在的問題是:我應該如何讓測試等待數據被處理程序檢索,以便我可以檢查它們的值?在android中的功能測試。如何等待片段結果?
0
A
回答
0
如何而不是等待值從實際對象返回。您可以創建可立即返回任何值的模擬對象。 Mockito是一個非常好用的模擬框架,在Android上非常容易使用。
http://code.google.com/p/mockito/
你去使用它來創建mock對象,而不是真正的對象,你必須找到「接縫」將它們插入到你的測試方式。用模擬對象,你可以得到它返回你想要的任何值的任何方法。藉助模擬對象,可以分離依賴關係。因此,在您的示例中,您可能希望創建模擬連接到api的對象的模擬對象,因爲那樣您可以返回測試需要的任何值,以便服務器返回以測試您正在測試的應用程序的任何部分。例如,如果在服務器返回用戶輸入錯誤密碼的情況下測試signUp活動是否已打開,則創建一個模擬對象,該對象將返回false給您的活動,然後將其插入到真實對象應該放置的位置。
大多數人在測試現有代碼時存在問題(這些代碼沒有考慮到可測試性),因爲通常沒有任何接縫插入測試對象。看看這個關於如何使代碼更易於測試的真棒博客。它包含真正偉大的建議。
http://googletesting.blogspot.com/2008/08/by-miko-hevery-so-you-decided-to.html
相關問題
- 1. 使功能等待結果在javascript
- 2. 如何測試Ruby on Rails功能測試中的JSON結果?
- 3. Android的等待功能
- 4. 在Android中測試片段
- 5. 如何讓Android測試工具測試用例等待一段時間以獲得一些結果?
- 6. 茉莉花JavaScript測試 - 等待功能測試完成
- 7. Android等待活動結果
- 8. bash命令測試結果在功能
- 9. 如何在android中等待語音識別的結果?
- 10. 如何使函數等待parse.com的saveInBackground結果? (在android中)
- 11. Android片段正在等待另一片段的數據
- 12. 如果值爲null等待運行功能的Android
- 13. Android Espresso不會等待片段加載
- 14. 如何使我的測試等待Jest?
- 15. 如何等待綁定服務,如果片段創建staticaly
- 16. 如何等待等待的功能完成
- 17. 在QUnit等待測試
- 18. 如何等待EDT的結果?
- 19. 我該如何等待JavaScript的結果?
- 20. 如何等待EvaluateJavascript的結果?
- 21. 如何等待Dispatcher Invoke的結果?
- 22. 等待ExecuteAsync()結果
- 23. 如何在功能測試
- 24. 如果需要的話等待結果
- 25. 等待插圖中的功能在Unity3D
- 26. Android - 測試嵌套片段
- 27. Android測試和片段IllegalArgumentException
- 28. Android測試用例等待回調
- 29. 在等待來自其他功能的值時打印「正在等待」功能
- 30. 爲什麼Capybara功能測試不會等待?
......我沒有想過這個。你是完全正確的,我會嘗試! – marino
太棒了...讓我知道它是如何去。 –
這似乎是一個非常好的圖書館,但我真的不能理解使用它的優點。手動創建我的對象有什麼不同?! – marino