Articles of junit

Как получить выход Android Logging, отображаемый с помощью тестов JUnit (используя собственный JUnit без эмулятора)

Я использую JUnit 4 для написания тестов на Android (эти тесты не используют эмулятор и работают как собственные тесты). В моем коде я использую SL4J для ведения журнала, однако, когда я запускаю модульные тесты, я не могу видеть какой-либо вывод журнала. Например, такие утверждения, как: private static final Logger logger = LoggerFactory.getLogger(AClass.class); logger.warn("log output not […]

JUnit4 TextUtils.isEmpty () дает отличный результат, чем String.isEmpty ()

Я знаю, что это странно, но это то, что у меня есть. Я пишу блок-тест, чтобы проверить свою логику для приложения для Android. Во время выполнения теста я вижу, что он не работает на этой строке: if (!TextUtils.isEmpty(fromFile)) До этого, if оператор fromFile равен «" (пустая строка), но каким-то образом он передает его и ломается […]

Android Studio Не удается разрешить символ «До» в импорте org.junit.

Я использую внешний библиотечный пакет junit-4.12 в своем проекте Android Studio. По какой-то причине, когда я импортирую «import org.junit.Before;» В мой класс java я получаю сообщение об ошибке «не может разрешить символ« Before »(это также происходит с« Test »), хотя я вижу, что файлы существуют в моем пакете junit (см. Изображение). У меня также есть […]

Gradle dependencies: как выяснить, что вызывает это дублирование

У меня есть проект Android, который содержит приложение MultiDex . Я пытаюсь запустить тесты Espresso, используя ./gradlew clean connectectedAndroidTest . В результате эта команда вызывает следующее сообщение об ошибке: :app:dexDebugAndroidTest UNEXPECTED TOP-LEVEL EXCEPTION: java.lang.IllegalArgumentException: already added: Landroid/support/test/InstrumentationRegistry; На моем верхнем уровне build.gradle содержится: classpath 'com.android.tools.build:gradle:1.2.3' И я использую Gradle 2.4 через обертку. Проект build.gradle моего […]

Отправка строчных букв в TextEdit во время инструментальных тестов

Я пишу тестовый пример JUnit для своего приложения для Android. Класс test расширяет ActivityInstrumentationTestCase2 и вызывает sendKeys() для эмуляции ввода пользователем для виджетов TextEdit . Однако все алфавитные коды клавиш (например, KeyEvent.KEYCODE_G ) отправляют только строчные буквы в TextEdit . Я попытался отправить KeyEvent.KEYCODE_SHIFT_LEFT перед отправкой алфавитного кода, но это, похоже, не работает. Итак, как […]

Java.lang.ClassNotFoundException: android.R

Я пытаюсь запустить простой junit-тест с Robolectric 2.2, но я получаю следующее сообщение об ошибке ADT package 22: java.lang.NoClassDefFoundError: android/R at org.robolectric.bytecode.Setup.<clinit>(Setup.java:40) at org.robolectric.RobolectricTestRunner.createSetup(RobolectricTestRunner.java:137) at org.robolectric.RobolectricTestRunner.createSdkEnvironment(RobolectricTestRunner.java:115) at org.robolectric.RobolectricTestRunner$3.create(RobolectricTestRunner.java:278) at org.robolectric.EnvHolder.getSdkEnvironment(EnvHolder.java:21) at org.robolectric.RobolectricTestRunner.getEnvironment(RobolectricTestRunner.java:276) at org.robolectric.RobolectricTestRunner.access$100(RobolectricTestRunner.java:57) at org.robolectric.RobolectricTestRunner$2.evaluate(RobolectricTestRunner.java:190) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) at org.robolectric.RobolectricTestRunner$1.evaluate(RobolectricTestRunner.java:177) at […]

Почему Android-тестирование не используется при тестировании?

Когда я запускал большой набор тестов, я заметил, что один из моих Android-сервисов больше не является одиночным. Предполагается, что Android-сервис должен быть одноточечным, но при использовании ServiceTestCase мой счетчик ссылок превысил 1. (увеличивается в onCreate, уменьшается в onDestroy). Вызов startService или bindService из тестового теста должен привести к второму onBind или onStartCommand, но никогда не […]

Два теста robotium, но второй висит там не отвечает (в JUnit View)

Мне удалось написать два тестовых примера в моем XXTest.java с включенным robotium-solo-3.2.1.jar, к счастью, в представлении JUnit показано, что первый из них выполнен, что устройство точно сработало (на эмуляторе тоже). Затем он переходит ко второму, но он просто висит там навсегда! Извините, я не могу приложить скриншот с моей учетной записью. Вот мой код: public […]

Получение простых тестов JUnit для запуска в Android Studio

Это изначально было напыщенным. Я потратил часы, пытаясь получить простейший модульный тест, запущенный в моем Android-проекте в Android Studio, и я шокирован тем, насколько невозможна эта основная задача. Я прочитал много ответов, но все они, кажется, указывают на использование Robolectric, чтобы избежать запуска тестов на устройстве. Мне все равно, работают ли они на устройстве или […]

Ошибка при тестировании службы JUnit

Код: public class Testprogdi extends ActivityInstrumentationTestCase2 { public Testprogdi(String pkg, Class activityClass) { super(pkg, activityClass); // TODO Auto-generated constructor stub } Context mContext; Registration reg = new Registration(); public void setUp(){ try { super.setUp(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } mContext = this.getInstrumentation().getContext(); } public void test(){ Assert.assertNotNull(reg.pass_url());} public […]