Articles of robolectric

Файл класса для android.support.v4.widget.DrawerLayoutImpl не найден на travis support-v4 21.0

Мы пытаемся запустить тесты на Трэвис CI. У нас есть класс, который использует android.support.v4.widget.DrawerLayout . Когда мы используем библиотеку v4 для поддержки Android build.gradle -> targetSdkVersion: 19 `compile 'com.android.support:support-v4:20.0.0'` .travis.yml – build-tools-19.1.0 – android-19 – extra-android-support – extra-google-google_play_services – extra-google-m2repository Мы не получаем эту ошибку, но build.gradle -> targetSdkVersion: 21 com.android.support:support-v4:21.0.+ .travis.yml – build-tools-21.0.1 – […]

Robolectric buildActivity () с шпионами Mockito?

Мне кажется, что создание тестового модуля Activity с утилитами жизненного цикла Robolectric (начиная с Robolectric.buildActivity() ) и Robolectric.buildActivity() и того же действия с помощью шпиона Mockito являются взаимоисключающими. Поскольку buildActivity() управляет построением объекта Activity, единственным местом для добавления шпиона для Activity является вызов функции buildActivity() . Однако шпион не работает должным образом, когда он добавляется […]

Робоэлектрические и IntentServices

Используя Robolectric, как можно было бы протестировать IntentService, который транслирует намерения в качестве ответа? Предполагая следующий класс: class MyService extends IntentService { @Override protected void onHandleIntent(Intent intent) { LocalBroadcastManager.getInstance(this).sendBroadcast(new Intent("action")); } } В моем тестовом примере я пытаюсь сделать что-то вроде этого: @RunWith(RobolectricTestRunner.class) public class MyServiceTest{ @Test public void testPurchaseHappyPath() throws Exception { Context context […]

Единичные тесты с JUnit + (Robolectric или Mockito или оба в Android)

Это первый раз, когда я должен написать блок-тесты в Android. Поэтому я много искал. Robolectric framewordk – работает на JVM Mockito Framwork – Издевательские объекты Поэтому у меня есть некоторые сомнения в Robolectric & Mokito. Должен ли я использовать Robolectric только с JUnit в Android-приложении? Должен ли я использовать Mockito только с JUnit в приложении […]

Ошибка Robolectric и Google Analytics на тестах

Я проводил тесты с Robolectric, и все было отлично. Затем я применил Google Analytics к классу приложений, и тесты начали сбой. Ошибка возникает, когда я раздуваю взгляды во время тестов. Вот трассировка стека: java.lang.NullPointerException: null at com.google.analytics.tracking.android.AnalyticsGmsCoreClient$AnalyticsServiceConnection.onServiceConnected(AnalyticsGmsCoreClient.java:176) at org.robolectric.shadows.ShadowApplication$2.run(ShadowApplication.java:209) at org.robolectric.util.Scheduler$PostedRunnable.run(Scheduler.java:162) at org.robolectric.util.Scheduler.runOneTask(Scheduler.java:107) at org.robolectric.util.Scheduler.advanceTo(Scheduler.java:92) at org.robolectric.util.Scheduler.advanceToLastPostedRunnable(Scheduler.java:68) at org.robolectric.util.Scheduler.unPause(Scheduler.java:25) at org.robolectric.shadows.ShadowLooper.unPause(ShadowLooper.java:219) at org.robolectric.shadows.ShadowLooper.runPaused(ShadowLooper.java:258) at org.robolectric.shadows.ShadowViewGroup.addView(ShadowViewGroup.java:32) […]

Robolectric 3.0, не удалось проверить функцию, которая запускает HandlerThread

У меня есть простой класс Job который расширяет HandlerThread : public class Job extends HandlerThread{ public Job(String name) { super(name); } … } Затем у меня есть класс JobUtils который имеет функцию, чтобы получить Job & start() : public JobUtils { public JobUtils() { } // I unit test this function in my test class […]

Ресурсы $ NotFoundException при использовании Robolectric с Gradle

Я слежу за этим руководством по настройке Robolectric для тестирования моего проекта Android Gradle. Я продолжаю эту ошибку: android.content.res.Resources$NotFoundException: no such label com.mypackage.dev:string/app_name productFlavors образец проекта из учебника, я установил, что проблема заключается в моем productFlavors (dev, staging, production). Добавление вкусов к рабочему образцу проекта вызывает ту же проблему. В этом ответе вы можете увидеть […]

Как протестировать IntentService с помощью Robolectric?

Я пытаюсь проверить метод onHandleIntent() IntentService с помощью Robolectric . Я начинаю службу с: Activity activity = new Activity(); Intent intent = new Intent(activity, MyService.class); activity.startService(intent); ShadowActivity shadowActivity = Robolectric.shadowOf(activity); Intent startedIntent = shadowActivity.getNextStartedService(); assertNotNull(startedIntent); Похоже, что startedIntent не равен null, но onHandleIntent() , похоже, не вызван. Как его проверить?

Android: Robolectric не поддерживает API уровня 1

Это мой основной класс тестов: @RunWith(RobolectricTestRunner.class) public class MainActivityTest { @Before public void setup() { //do whatever is necessary before every test } @Test public void testActivityFound() { Activity activity = Robolectric.buildActivity(MainActivity.class).create().get(); Assert.assertNotNull(activity); } } Когда я выполняю свой тест в Android Studio, с окном терминала, у меня есть эта ошибка: java.lang.UnsupportedOperationException: Robolectric does not […]

Тестирование базы данных SQLite в Robolectric

Я пытаюсь протестировать простую базу данных SQLite с помощью Robolectric в приложении для Android. Я добавляю некоторые значения, но при чтении их возвращается 0 строк. Я использую класс SQLiteOpenHelper для доступа к базе данных. // RequestCache extends SQLiteOpenHelper RequestCache cache = new RequestCache(activity); SQLiteDatabase db = cache.getWritableDatabase(); // Write to DB ContentValues values = new […]

Intereting Posts
Создание UML-диаграммы в Android Studio Эквивалент ldd для android Android 5.x ClassNotFoundException отлично работает на 6.0+ Попытка закончить входное событие, но приемник событий ввода уже был удален Как сделать мой макет способным прокручивать вниз? Android NDK: load_library: не удается найти srand Android – SPAN_EXCLUSIVE_EXCLUSIVE пролеты не могут иметь нулевую длину Android Studio застряла при создании нового Project on Gradle: Configure Project или Gradle: Resilve Dependencies ': classpath:' Нажатие кнопки меню вызывает сбои в действии без ActionBar С 0.4.3 Android Studio, ошибка: «Синхронизация проекта Gradle не удалась. Основные функции (например, редактирование, отладка) не будут работать должным образом " Динамический запуск в Android? Пользовательский одиночный выбор ListView Zipalign – команда не найдена – терминал MAC Платеж Google In-App, IllegalArgumentException: намерение службы должно быть явным, после перехода на Android L Dev Preview Как удалить запись с ORMLITE?