Intereting Posts
Декодировать аппаратное обеспечение декодированного устройства H264 с помощью ffmpeg в режиме реального времени Значок поиска для поиска закрывается, а не белый Как сделать ход для 3 сторон для формы в андроиде? Как проверить активность на переднем плане или на видимом фоне? Что эквивалентно фрагменту Activity.isFinishing ()? Получить информацию из пакета JSON Android: потребление игровой памяти LibGDX 2D Создание AsyncTask вызывает сбой Как обнаружить утечку памяти Android CountDownTimer показывает 1 в течение двух секунд Cordova media plugin – остановить потоковое нерабочее – release () замораживает устройство Является ли устаревшее слово единственной разницей между fill_parent и match_parent Как получить индекс определенного вида OR ViewGroup, который добавлен в ViewGroup (макет) Google Analytics – отображение значений событий на ярлыке события Добавить фильтр на RecyclerView с карточками?

Тестирование асинхронных задач с помощью robolectric

Вы знаете, как реализовать модульное тестирование для AsyncTasks с помощью Robolectric? Любые указатели будут оценены.

Solutions Collecting From Web of "Тестирование асинхронных задач с помощью robolectric"

Вызовите execute(...) в задаче, затем дождитесь результата вызова Robolectric.runBackgroundTasks() / Robolectric.flushBackgroundThreadScheduler() после чего вы можете утверждать.

 @Test public void test() { //create task MyAsyncTask asyncTask = new MyAsyncTask(); //start task asyncTask.execute(...); //wait for task code // Robolectric.runBackgroundTasks(); (pre 3.0) Robolectric.flushBackgroundThreadScheduler(); //from 3.0 //can run asserts on result now assert...(asyncTask.get()); } 

С Robolectric 2.4 это теперь в ShadowApplication :

ShadowApplication.runBackgroundTasks();