2015-02-10 6 views
6

Я читал, есть множество обширных ответов (например, this one), но мир Android развивается так быстро, что они кажутся немного устаревшими, а official documentation по-прежнему относится к Eclipse с ADT.Android Studio 1.1, простая настройка теста junit

Я запускаю AS 1.1, и я пытаюсь настроить простые тесты junit для запуска на эмуляторе без Robolectric. Если я не включу junit в мой build.gradle, он не может найти @After, @Before и @Test, и я получаю package org.junit does not exist. При добавлении

// unit tests 
androidTestCompile 'junit:junit:4.11' 

ошибка становится

Error:duplicate files during packaging of APK 
[...]/app/build/outputs/apk/app-debug-test-unaligned.apk 
Path in archive: LICENSE.txt 
Origin 1: [...]/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar 
Origin 2: [...]/.gradle/caches/modules-2/files-2.1/junit/junit/4.11/4e031bb61df09069aeb2bffb4019e7a5034a4ee0/junit-4.11.jar 
You can ignore those files in your build.gradle: 
android { 
    packagingOptions { 
    exclude 'LICENSE.txt' 
    } 
} 

После консольного предложения об исключении LICENSE.TXT, тогда работает, но он чувствует, как взломать. Так что мне интересно, может, я что-то упустил? Благодарю.

+0

Вот так мы делаем это в нашем проекте, и это, кажется, ожидаемый путь. – Joel

+0

Исключить LICENSE.txt - обычная практика :) (а также META-INF/LICENSE.txt и META-INF/NOTICE.txt) – jademcosta

+0

Имея ту же проблему, где находятся ваши тесты? – user1408682

ответ

3

Поддержка тестирования студийного оборудования для Android поставляется в версии 1.1 Beta 4 (release announcement) с версией плагина Gradle 1.1.0-rc1. Дополнительная информация в official document.

Однако пока это экспериментальная функция. Например. это breaksinstallDebug задача град.

Для использования JUnit в контрольно-измерительных тестах используется good guide для библиотеки Espresso и another, охватывающих новый AndroidJUnitRunner.

1

Если это целесообразно, я создал проект плиты котла, позволяющий использовать модульные испытания и тесты эспрессо с использованием вариантов переключения. Вам не нужно использовать сторонние плагины с этим.

https://github.com/hitherejoe/Android-Boilerplate

+0

Большое спасибо за это! Это сэкономило мне много времени :) –

+0

без проблем! Я буду обновлять его в течение следующих нескольких дней с новой версией robolectric и т. Д. - наслаждайтесь! –

Смежные вопросы