3
我想單元測試一個使用Android DownloadManager服務的類,但我不確定如何去做。我是否應該使用DownloadManager服務,或者有什麼方法可以模擬它?我寧願沒有我的測試呼叫外部網絡服務器。是否有可用於此的現有測試庫?單元測試和Android DownloadManager
我想單元測試一個使用Android DownloadManager服務的類,但我不確定如何去做。我是否應該使用DownloadManager服務,或者有什麼方法可以模擬它?我寧願沒有我的測試呼叫外部網絡服務器。是否有可用於此的現有測試庫?單元測試和Android DownloadManager
一個重要的事情知道的是,下載管理器請求的計數開始於-1。所以,如果你入隊的請求,請求計數會是0
編寫測試
public void shouldEnqueueRequest() {
//...
//...
verify(downloadManager, times(1)).enqueue(anyObject());
//Is the DownloadManager empty
assertThat(shadowOf(downloadManager).getRequestCount(), greaterThan(-1));
//Get the request from the DownloadManager
ShadowRequest realRequest = shadowOf(shadowOf(downloadManager).getRequest(0));
assertThat(realRequest, notNullValue());
assertThat(realRequest.getDescription(), equalTo("Your description"));
assertThat(realRequest.getTitle(), equalTo(APP_NAME));
}
嗨爲零,您是否找到任何針對DownloadManager單元測試的解決方案? – Andy 2017-02-07 06:32:39