Gradle Espresso - 空测试套件

3

尝试使用gradle/Android-Studio运行espresso集成测试,但没有找到任何测试:

package net.espresso_test;

import android.test.ActivityInstrumentationTestCase2;
import android.test.suitebuilder.annotation.SmallTest;

@SmallTest
public class AddTest extends ActivityInstrumentationTestCase2<MainActivity> {

    public AddTest() {
        super(MainActivity.class);
    }

    public AddTest(Class<MainActivity> activityClass) {
        super(activityClass);
    }

    @Override
    public void setUp() throws Exception {
        super.setUp();
        // Espresso will not launch our activity for us, we must launch it via getActivity().
        getActivity();
    }

    @SuppressWarnings("unchecked")
    @SmallTest
    public void testAddItem() {
        fail();
    }

}

这是 build.gradle 文件:

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

repositories {
    mavenCentral()
    maven {
        url project.hasProperty('ligisMavenUrl') ? ligisMavenUrl : "https://raw.github.com/ligi/ligis-mvn-repo/master";
    }
}

android {
    compileSdkVersion 19
    buildToolsVersion "19"

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 19
        testInstrumentationRunner "com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner"
    }
}

dependencies {
    compile files('libs/socialauth-android-3.0.jar')
    compile files('libs/volley.jar')

    instrumentTestCompile files('libs/espresso-1.0-SNAPSHOT-bundled.jar')
    instrumentTestCompile 'com.google.guava:guava:11.0.2'

    compile 'org.ligi:AXT:0.21'

    compile 'com.android.support:appcompat-v7:18.0.0'
    compile 'com.android.support:support-v4:18.0.0'
    compile 'com.google.android.gms:play-services:3.2.25'
    compile 'com.squareup.dagger:dagger:1.1.0'
    compile 'com.squareup.dagger:dagger-compiler:1.1.0'
    compile 'com.jakewharton:butterknife:3.0.0'
}

我也尝试了许多来自Github的其他存储库 - 所有存储库都有同样的问题 - 这里有一个提示,它可能与guava有关(但我在这个项目中没有使用它) - 但目前还没有解决方案:

https://groups.google.com/d/msgid/android-test-kit-discuss/0e8bf175-498f-438e-b883-35b76bcede8d%40googlegroups.com

我真的卡在这里了-希望能得到任何提示或理想情况下链接到一个正常工作的存储库..


我在使用Android Studio时也遇到了这个问题。不过我可以通过gradle运行。请查看我的帖子:https://dev59.com/tHjZa4cB1Zd3GeqPen_C#19652380 - Matt Wolfe
1个回答

1
我认为你会发现,Guava是Espresso的一个依赖项。

https://code.google.com/p/android-test-kit/source/browse/#git%2Fbin%2Fespresso-dependencies%253Fstate%253Dclosed

您同时使用了捆绑的espresso jar和一个guava导入,它们看起来相互矛盾。

instrumentTestCompile files('libs/espresso-1.0-SNAPSHOT-bundled.jar')
instrumentTestCompile 'com.google.guava:guava:11.0.2'

Espresso的捆绑版本附带了guava 14.0.1。

请删除您在gradle测试依赖项中多余的guava jar。

如果这不起作用,您还可以发布测试清单的相关部分。


谢谢!我没有考虑到Guava,因为我在这个项目中没有使用它 - 完全忽略了Dagger会引入Guava.. - ligi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接