2015-02-23 39 views
0

我該如何等待,直到完成某件事加載。我需要等到應用程序下載了大約10MB的數據。由於我已經在Robotium類中實現了加載,因此如果完成,我沒有機會檢查UI的消息。 加載時間有時會更長,所以我不能像solo.sleep(10000)那樣放置。 我還有什麼其他選擇?我試過sleep.waitForCondition()sleep.waitForLogMessage。沒有工作。Robotium等到加載日期完成

+0

作爲應用程序的用戶,您如何告訴下載完成?在用戶界面上做了什麼改變?元素出現了嗎? dissapear? – 2015-02-23 11:43:38

+0

那麼,下載通常發生在另一個地方,並有一個進度條。但是爲了測試,我從一開始就需要它們。因爲測試是獨立的並且是隨機執行的。所以我需要從開始添加一些對象的數據。這就是爲什麼我在運行Robotium時在UI上沒有任何指示器。 – 2015-02-23 12:17:03

回答

0

一些替代方案:

加載測試線程 - 由於Android測試在一個單獨的線程中運行,你可以嘗試在同一個線程測試下載(它不會拋出NetworkOnMainThreadException)。下載將阻止測試,直到完成(或超時),然後您可以繼續測試。

忙於等待 - 創建加載完成時設置的標誌,並在測試中持續檢查該標誌,直到它被設置,然後繼續測試。