gpt4 book ai didi

android - 编写 Gradle 脚本以运行 Eclipse Android 测试项目的单元测试用例

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:04:09 24 4
gpt4 key购买 nike

我有一个简单的 HelloWorld Android 项目(在 Eclipse IDE 中构建),我能够在该项目的 cmd 提示符下成功执行“gradle build”。

我还为它编写了一个简单的 JUnit Android 测试项目,它在 Eclipse 中运行良好。

现在我想使用 Gradle 脚本运行此测试项目或单元测试用例(如果我的理解有误!)。 我该怎么做?

以下是我正在使用的 build.gradle 文件。我想知道如何编写脚本代码来自动执行测试用例。

buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.10.+'
}
}
apply plugin: 'android'

dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}

android {
compileSdkVersion 19
buildToolsVersion "19.0.3"

sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}
test {
java.srcDirs = ['src/test/java']
resources.srcDirs = ['src/test/resources']
}

// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')
androidTest.setRoot('tests')

// Move the build types to build-types/<type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<type>/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}

最佳答案

这是我用的:

android {
// ...
// your stuff
// ...

// So Android Studio can nicely edit the test files
sourceSets {
androidTest {
java.srcDir file('src/test/java')
}
}
}

// <Task to run tests>
sourceSets {
unitTest {
java.srcDir file('src/test/java')
}
}

configurations {
unitTestCompile.extendsFrom runtime
unitTestRuntime.extendsFrom unitTestCompile
}

task unitTest(type: Test, dependsOn: assemble) {
description = "run unit tests"
testClassesDir = project.sourceSets.unitTest.output.classesDir
classpath = project.sourceSets.unitTest.runtimeClasspath
}

check.dependsOn unitTest
// </Task to run tests>

dependencies {
// ...
// compile stuff
// ....

unitTestCompile files("$project.buildDir/classes/release")
unitTestCompile 'junit:junit:4.11'
}

运行你的测试:

gradlew unitTest

关于android - 编写 Gradle 脚本以运行 Eclipse Android 测试项目的单元测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23557946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com