Vik*_*r K 8 android integration-testing unit-testing gradle
目前我有一个test/src/java文件夹,其中存储了android应用程序的所有测试(测试是使用junit,mockito和robolectric完成的).
我可以运行那些使用 ./gradlew test
我想要实现的是拥有两个文件夹:
integrationTest/src/java - 用于集成测试test/src/java - 用于单元测试而且我也想分开运行它们,比如./gradlew test和./gradlew integrationTest.
我已经设法用sourceSets这样的测试分割目录:
sourceSets {
test {
java {
srcDirs = ['src/test/java', 'src/integrationTest/java', 'src/commonTest/java']
}
resources {
srcDirs = ['src/test/resources', 'src/integrationTest/resources', 'src/commonTest/resources']
}
}
}
Run Code Online (Sandbox Code Playgroud)
我已经搜索了许多关于如何创建自定义测试任务的示例,但是大多数都与java而不是android有关,而其他的已经过时了.我现在花了整整一天,所以如果有人能帮助我,我会非常感激.
可能是这样的
sourceSets {
integrationTest {
java {
compileClasspath += main.output
runtimeClasspath += main.output
srcDir 'src/integrationTest/java'
}
resources.srcDir 'src/integrationTest/resources'
}
}
configurations {
integrationTestCompile {
extendsFrom compile
}
integrationTestRuntime {
extendsFrom runtime
}
}
task integrationTest(type: Test) {
testClassesDir = sourceSets.integrationTest.output.classesDir
classpath = sourceSets.integrationTest.runtimeClasspath
}
check.dependsOn integrationTest
Run Code Online (Sandbox Code Playgroud)
那么你可以做
dependencies {
integrationTestCompile 'org.seleniumhq.selenium:selenium-java:3.0.1'
integrationTestRuntime 'com.foo:bar:1.0'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1041 次 |
| 最近记录: |