그래서 나는 android로 gradle 프로젝트를 설정하고 실행하기위한 몇 가지 테스트를 시도했다. 불행하게도 그들은 그렇게 보이지 않습니다. 그것은 명백한 무언가를 잃어 버렸을 가능성이 있지만 여기에 간다 ...Gradle 1.11 androidTest classes are
나는 gradle 1.11을 실행 중이다. 테스트를 위해 사용해야하는 새 폴더 (새 문서는 0.9라고 생각하기 때문에?)를 이해하고있다. 이것은에서 언급 한 여러 프로젝트 빌드 및 서브 모듈은
apply plugin: 'android'
android {
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig {
minSdkVersion 11
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:+'
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':MultiGradleSubmodule')
}
:
그래서 난 내 TestClass에를 :: 여기 src/androidTest
에 살고
package se.coinhunter.multigradle.test;
import org.junit.Test;
import static org.junit.Assert.*;
public class HelloAndroidTests {
@Test
public void testHelper() {
assertEquals(1,1);
}
}
}
내 build.gradle되어 있습니다 의존성 블록은 '자체 소스와 단위 테스트가 매우 원활하게 실행되는 평범한 자바 프로젝트입니다. 나는 그것이 테스트를 실행하고 나에게 약간의 피드백을 줄 때 그것이 나에게 말해야한다는 것을 지정할 수 있었다. 그리고 그것은 잘 동작한다. 이는 해당 프로젝트에서 'build.gradle'에
test {
testLogging {
events 'started', 'passed'
}
}
을 사용하여 달성되었습니다. 나는 안드로이드 프로젝트를 위해 이와 같은 것을 발견하지 못했다. 전체 프로젝트가 빌드되고 실행되지만 테스트를 실행하지 못하거나 실행 중이지만 출력이 나오지 않습니다.
감사를 사용하여 테스트를 실행
합니다. 현재로서는 지원 클래스의 논리 등이 제대로 작동하는지 확인하기 위해 간단한 단위 테스트를 실행해야합니다. AndroidTestCase를 확장하도록 클래스를 변경했으며 제안한대로 org.junit 가져 오기를 제거하고 junit.framework로 바꿨습니다. 그것은 여전히 잘 지내고 있지만, 그래 클 빌드를 할 때 테스트를 실행하지 않는 것처럼 보입니다. 빌드 작업은 어셈블 및 테스트를 모두 수행해야하므로 누락 된 것이 있어야합니다. – Coinhunter
@Coinhunter - 게시물에서 명확하지 않지만 "src/androidTest/java"에 테스트 클래스가 있습니까? 귀하의 게시물은 "androidTest"아래의 "java"디렉토리에 있지 않을 수도 있음을 제안하는 것으로 보입니다. testInstrumentationRunner "android.test.InstrumentationTestRunner" 및 testFunctionalTest를 true로 설정하여 "defaultConfig"를 변경해야 할 수도 있습니다. 내 업데이트 답변을 참조하십시오. – AndroidGuy
죄송합니다. 아마도 조금 더 명확하게 만들 수 있었을 것입니다. 테스트는 src/androidTest/java에 있습니다. 언급 한 두 줄을 추가했으나 여전히 괜찮 았지만 테스트가 실제로 실행 중임을 알려주지 않았습니다. – Coinhunter