我正在尝试通过仪器测试运行浓缩咖啡(使用双意式浓缩咖啡)并通过Robolectric进行单元测试。到目前为止,我所拥有的主要基于甲板分级的例子。
注意:Gradle 1.10
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.10.4'
classpath 'org.robolectric.gradle:gradle-android-test-plugin:0.10.0'
}
}
apply plugin: 'android'
apply plugin: 'android-test'
android {
compileSdkVersion 19
buildToolsVersion '19.0.3'
defaultConfig {
packageName = 'com.example.app'
minSdkVersion 9
targetSdkVersion 19
versionCode 1
versionName '1.0.0'
testInstrumentationRunner "com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner"
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
buildTypes {
debug {
debuggable = true
runProguard = false
}
release {
debuggable = false
runProguard = true
}
}
sourceSets {
androidTest {
setRoot('src/test')
}
}
packagingOptions {
exclude 'LICENSE.txt'
}
}
androidTest {
include '**/*Test.class'
exclude '**/espresso/**/*.class'
maxHeapSize = "2048m"
}
repositories {
mavenCentral()
}
dependencies {
compile 'com.android.support:support-v4:19.1.0'
androidTestCompile('com.jakewharton.espresso:espresso:1.1-r3')
androidTestCompile('com.jakewharton.espresso:espresso-support-v4:1.1-r3') {
exclude group: 'com.android.support', module: 'support-v4'
}
androidTestCompile('junit:junit:4.11') {
exclude module: 'hamcrest-core'
}
androidTestCompile('org.robolectric:robolectric:2.3') {
exclude module: 'classworlds'
exclude module: 'maven-artifact'
exclude module: 'maven-artifact-manager'
exclude module: 'maven-error-diagnostics'
exclude module: 'maven-model'
exclude module: 'maven-plugin-registry'
exclude module: 'maven-profile'
exclude module: 'maven-project'
exclude module: 'maven-settings'
exclude module: 'nekohtml'
exclude module: 'plexus-container-default'
exclude module: 'plexus-interpolation'
exclude module: 'plexus-utils'
exclude module: 'wagon-file'
exclude module: 'wagon-http-lightweight'
exclude module: 'wagon-http-shared'
exclude module: 'wagon-provider-api'
}
androidTestCompile 'com.squareup:fest-android:1.0.8'
}
我的目录结构如下,其中com.example.app。浓缩咖啡
需要作为connectedAndroidTest
com.example.app运行。数据作为测试
:
src |- debug |- main |- release |- test |- java |- com |- example |- app |- espresso |- HomeActivityTest.java |- data |- DataTest.java |- resources |- data_input.json
因此,当我运行gradle清洁测试
时,我收到错误,无法识别HomeActivityTest.java
中的浓缩咖啡导入。
当我运行 gradle 干净连接Android测试
时,我收到错误,无法识别 DataTest
中的 JUnit4 注释.java(失败到创建测试.testSuite构造失败
)。
如果我把任何一个部分(依赖关系和源代码)拿出来,另一个可以独立工作,但不能将所有内容都包含在一起。
注意:我尝试在本地导入Espresso jar(没有Double Espresso),就像deckard-gradle一样,直到我在Espresso测试中使用support-v4
库中的任何东西(com.jakewharton.espresso:espresso-support-v4
似乎可以解决这个问题,这是本地jar无法替代的),然后它会爆炸成FailedToCreateTests.testSuiteConstructionFailed
。
有人让这个结构工作吗?有没有办法从每个目标中排除源路径?
任何解决方案(全部或部分)将不胜感激。
null 动画/转换被禁用,但这不会阻止CircularProgressLayout动画化。 我尝试,但即使这样,在第一次单击和第二次单击之间也要等待2秒。 我还试图滥用作为黑客来确认退出应用程序。这确实有效,但这是一个黑客。我只想让浓缩咖啡点击两次。 有什么建议如何使浓缩咖啡点击两次而不等待动画?
在我的主要活动中,我有initUi函数,它将触发对webviewActivity的意图,在webviewActivity中,有一个FragWebView,其中加载了url。 以下是来自FragWebView的示例代码: 我从我的主要活动中传递打开webview的意图是: 请让我知道如何解决这个问题。 问候
当我试图编写一个与listview项交互的代码时,我得到了一个OmbyuousViewMatcherException异常。场景如下。 我有一个包含两个视图的listview 文本视图 按钮查看 我在列表中有将近250行。所有按钮都有文本“预订”或“取消”。他们在一个洗牌的顺序。我想直接点击列表中的第一个“预订它”按钮。我已经尝试了很多方案,但仍然无法找到解决方案。拜托谁帮帮我。 下面是我现在的代
我试着用“浓缩咖啡”写简单的测试 但我有个错误: 我正在尝试不同的框架进行测试,对我来说是最好的,但如果有人能帮助修复这个错误,我将非常感激
使用AndroidInjector和子组件使得无法将objected的activity作用域注入到Espresso的测试类中。 以前,在使用应用程序级组件和activity组件时,只要创建继承了activity组件的测试组件,就可以调用inject()来测试不是活动的类。 示例: activity成分 测试类组件 测试模块 在测试类中 人们如何获得activity模块的访问,是自动生成的,并使用他
本文向大家介绍Android 设置意式浓缩咖啡,包括了Android 设置意式浓缩咖啡的使用技巧和注意事项,需要的朋友参考一下 示例 在build.gradle您的Android应用模块的文件中,添加下一个依赖项: 在文件中AndroidJUnitRunner为testInstrumentationRunner参数指定build.gradle。 此外,添加此依赖项以提供意图模拟支持 并将其添加为w