我正在尝试使用此行运行测试...但是这会启动所有测试:
./gradlew -DconnectedAndroidTest.single=LandingActivityTests connectedAndroidTest
Run Code Online (Sandbox Code Playgroud)
我该如何进行单一测试?
使用带有gradle包装器版本2.2.1的Android工作室,我试图在一个单独的测试类中运行所有测试,以及该类中的特定测试并尝试使用:
./gradlew test --tests DownloadsActivityTest
Run Code Online (Sandbox Code Playgroud)
像文档建议,以及
-DandroidTest.single=DownloadsActivityTest
Run Code Online (Sandbox Code Playgroud)
但这些版本都不起作用.
如何使用gradle包装器从命令行运行单个测试类和单个测试?
./gradlew --version
------------------------------------------------------------
Gradle 2.2.1
------------------------------------------------------------
Build time: 2014-11-24 09:45:35 UTC
Build number: none
Revision: 6fcb59c06f43a4e6b1bcb401f7686a8601a1fb4a
Groovy: 2.3.6
Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
JVM: 1.7.0_51 (Oracle Corporation 24.51-b03)
OS: Linux 3.17.6-200.fc20.x86_64 amd64
[16:33][j@localhost:~/myHomeDir]$ ./gradlew test --tests DownloadsActivityTest
WARNING: Dependency commons-logging:commons-logging:1.1.1 is ignored for debugTest as it may be conflicting with the internal version provided by Android.
In case of problem, please repackage it with jarjar to …Run Code Online (Sandbox Code Playgroud) 在我的 Android 应用程序中,我有几个测试类。如果我运行以下命令,./gradlew connectedAndroidTest它将运行 android test 文件夹中的所有测试用例并为所有测试类生成测试报告,但我需要测试特定的测试类并为我尝试使用以下命令的测试类生成报告:
./gradlew test --tests com.login.user.UserLoginTest
Run Code Online (Sandbox Code Playgroud)
上面的命令抛出以下异常
FAILURE: Build failed with an exception.
* What went wrong:
Problem configuring task :app:test from command line.
> Unknown command-line option '--tests'.
* Try:
Run gradlew help --task :app:test to get task usage details. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at …Run Code Online (Sandbox Code Playgroud) android unit-testing android-gradle-plugin android-instrumentation android-junit
我的项目是在Android Studio上创建的普通Android项目.

我google了很多次来进行单一测试(在SimpleTest中测试,在这种情况下测试1次),每个人都说我应该这样做
./gradlew -Dtest.single=SimpleTest test
Run Code Online (Sandbox Code Playgroud)
在我的根文件夹中.
或者我在我的内部项目文件夹中
../gradlew -Dtest.single=SimpleTest test
Run Code Online (Sandbox Code Playgroud)
我尝试了很多像这样的方法,但它总是运行我所有的测试.(所有类中的11个测试)
我的build.gradle上有问题,还是有遗漏的东西?
这是我的build.gradle文件.
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.6.+'
classpath 'com.github.jcandksolutions.gradle:android-unit-test:1.0.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.1.1"
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
// I changed this for this question
packageName "com.XXX.XXXX"
}
sourceSets {
instrumentTest.setRoot('src/test')
}
}
apply plugin: 'android-unit-test'
dependencies {
repositories {
mavenCentral()
}
compile 'com.android.support:support-v4:18.0.+'
compile 'com.android.support:appcompat-v7:+'
compile …Run Code Online (Sandbox Code Playgroud) 我需要使用命令行在快速文件中的应用程序的特定包中使用 Gradle 运行测试。我正在使用这个命令
sh './gradlew test --tests "com.package.exemple.*"'
Run Code Online (Sandbox Code Playgroud)
但它给了我这个错误
从命令行配置任务 :app:test 时出现问题。
>未知的命令行选项“--tests”。
我尝试了很多变体,但没有一个有效。
感谢您的帮助 !
我有一个Android/Gradle项目.每当我想运行测试时,我运行:
./gradlew connectedInstrumentTest
Run Code Online (Sandbox Code Playgroud)
它在我的项目的测试文件夹下运行我的所有测试.
我的测试文件夹有几个自动化测试以及非自动化测试.我最感兴趣的是在没有慢速自动化测试的情况下运行快速非自动化测试.
有没有办法只运行一组特定的测试,例如从一个特定的类或类似的东西?我基本上都在询问任何类型的分离,以便我可以选择在我想要的时候运行一些测试.
在这里创建了一个示例项目.
编辑local.properties以指向您的Android SDK.
接下来,启动模拟器或将手机连接到计算机.然后你可以使用运行测试./gradlew connectedInstrumentTest --info.这将运行所有测试.
我无法弄清楚的是如何只在一个类而不是所有测试中运行测试.
Gradle Android 测试不支持过滤器(--tests)。
gradlew test --tests com.example.test.*
Run Code Online (Sandbox Code Playgroud)
作品。
gradlew connectedAndroidTest --tests com.example.test.*
Run Code Online (Sandbox Code Playgroud)
错误:未知的命令行选项“--tests”。
android ×6
gradle ×5
testing ×3
fastlane ×1
filter ×1
robolectric ×1
robotium ×1
travis-ci ×1
unit-testing ×1