我有一些库项目有自己的测试.我不负责这个库项目并且不关心它的测试,但是,当我运行gradle :app:connectedCheck它时运行我的测试但它也运行依赖项的测试.有什么办法可以阻止这个吗?
我应该提一下,我的依赖关系不在app我所说的模块中.
编辑:更具体地说,我依赖的图书馆项目有非常长的测试,因为他们打算在凌晨2点在构建服务器上运行,所以我坐在这里等待油漆干燥只是为了让我真的很短试验.
EDIT2:我也尝试过使用Spoon.我现在已经安装它并可以运行单个类,但我想在一个包中运行所有内容.那可能吗?
编辑3:文件夹结构是无关紧要的,但这是一个非常非常详细的外观:
root
-some_library_project
-main_project
-settings.gradle
Run Code Online (Sandbox Code Playgroud)
main_project build.gradle看起来像这样.我应该提一下勺子目前什么都不做,但我的选择是开放的:
buildscript{
repositories {
jcenter()
}
dependencies{
classpath 'com.stanfy.spoon:spoon-gradle-plugin:0.10.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'spoon'
android {
compileSdkVersion 20
buildToolsVersion '20.0.0'
defaultConfig {
applicationId "com.something.main_project"
minSdkVersion 17
targetSdkVersion 20
versionCode 1
versionName "1.0"
testPackageName "com.something.main_project.test"
testInstrumentationRunner "android.test.InstrumentationTestRunner"
}
signingConfigs {
debug {
storeFile file("debug.keystore")
}
release {
storeFile file("release.keystore")
storePassword "something"
keyAlias "something"
keyPassword "something"
}
}
buildTypes {
release {
runProguard false …Run Code Online (Sandbox Code Playgroud) 我正在尝试在Travis CI上构建和测试我的项目.它每次都在我的所有存储库上不断向我显示相同的重复输出.
这是我的travis.yml https://github.com/carts-uiet/cartsbusboarding/blob/master/.travis.yml
language: android
android:
components:
# Uncomment the lines below if you want to
# use the latest revision of Android SDK Tools
# - platform-tools
# - tools
# The BuildTools version used by your project
- build-tools-21.0.0
# The SDK version used to compile your project
- android-21
# Additional components
- add-on
- extra
# Specify at least one system image,
# if you need to run emulator(s) during your tests
- sys-img-armeabi-v7a-android-21
# …Run Code Online (Sandbox Code Playgroud) I'm trying to get travis-ci to work with my android application. If I only execute assembleDebug it works fine. But I want to run tests too and generate code coverage. This is the config I have right now:
language: android
android:
components:
# Uncomment the lines below if you want to
# use the latest revision of Android SDK Tools
- platform-tools
- tools
# The BuildTools version used by your project
- build-tools-23.0.1
# The SDK version used to …Run Code Online (Sandbox Code Playgroud) 现在我正在为基于Gradle的Android项目配置Travis CI.是否可以临时禁用从Travis启动的测试,只知道 - 是否可以构建项目?
我发现了特拉维斯CI的几个问题,我一直在解决它们,但最后一个我不能解决它们.
我遇到了常见的错误
com.android.ddmlib.InstallException: Failed to establish session
这是我的travis文件:
language: android
before_install:
- chmod +x gradlew
android:
components:
# Uncomment the lines below if you want to
# use the latest revision of Android SDK Tools
# - platform-tools
# - tools
# The BuildTools version used by your project
- tools
- build-tools-23.0.3
# Additional components
- extra-google-m2repository
- extra-android-m2repository
# The SDK version used to compile your project
- android-23
# Specify at least one system image,
# if …Run Code Online (Sandbox Code Playgroud) 我有一个简单的单元测试静态方法并在模拟器上运行它们.(目标是在云CI上运行,因此我在模拟器上进行测试.)
Gradle 2.2.1仿真器Android 5.0
我在控制台上使用这些步骤.
的build.gradle
dependencies {
...
androidTestCompile('com.jakewharton.espresso:espresso:1.1-r3') {
exclude group: 'com.squareup.dagger'
exclude group: 'com.squareup.dagger:dagger:1.2.1'
}
}
android {
compileSdkVersion 21
buildToolsVersion "21.1"
defaultConfig {
minSdkVersion 16
targetSdkVersion 21
testInstrumentationRunner "com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner"
}
sourceSets {
androidTest.setRoot('src/androidTest')
}
}
Run Code Online (Sandbox Code Playgroud)
错误日志是
Tests on test(AVD) - 5.0 failed: Instrumentation run failed due to 'java.lang.IncompatibleClassChangeError'
com.android.builder.testing.ConnectedDevice > hasTests[test(AVD) - 5.0] FAILED …Run Code Online (Sandbox Code Playgroud) 我猜这是travis-ci支持吗?我是从他们的网站发送来的。我想我应该在这里问这个问题。
因此,我将Google Analytics(分析)添加到了我的应用中,为此,我必须将其插件的gradle更新到2.10版。完成后,所有travis-ci都会运行我的构建,但是在每个构建上都会出现以下错误:
com.android.builder.testing.ConnectedDevice > No tests found.[test(AVD) - 5.0.2] FAILED
Run Code Online (Sandbox Code Playgroud)
当我使用gradle2.2.1.-all时,这不是问题。
要更新我改变了distributionUrl在gradle/wrapper/gradle-wrapper.properties
有人知道解决办法吗?我所有其他分支都很好,我没有进行此更改。
作为参考,这里是我的travis.yml,我没有对其进行任何更改,只是更新了gradle。
language: android
jdk: oraclejdk7
android:
components:
- platform-tools
- tools
- build-tools-23.0.2
- android-23
- sys-img-armeabi-v7a-android-21
- extra-android-support
- extra-android-m2repository
- extra-google-m2repository
- extra-gooogle-google_play_services
env:
global:
- ADB_INSTALL_TIMEOUT=8
- MALLOC_ARENA_MAX=2
sudo: false
cache:
directories:
- $HOME/.gradle/caches/2.8
- $HOME/.gradle/caches/jars-1
- $HOME/.gradle/daemon
- $HOME/.gradle/native
- $HOME/.gradle/wrapper
before_install:
- export ANDROID_HOME=/usr/local/android-sdk
- export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
- echo "sdk.dir=$ANDROID_HOME" > local.properties
notifications:
slack: caketechnologies:pnmNEHM1ZxudlMZNTv6oVgcT
install:
- TERM=dumb …Run Code Online (Sandbox Code Playgroud)