AndroidJUnitRunner 1.0.0和AssertJ的仪表化测试失败

AndroidJUnitRunner 1.0.0和AssertJ的仪表化测试失败,android,android-support-library,android-testing,assertj,Android,Android Support Library,Android Testing,Assertj,我正在尝试将我的项目更新到最近发布的Android测试支持库版本1.0.0。但如果我添加assertjcoredependency-Gradle检测测试任务开始失败,并显示“未找到测试”消息。不过,我可以从IDE成功运行单个测试 很容易重现问题: 使用空活动从Android Studio 3创建新项目 添加assertjcore依赖项 从命令行/gradlew connectedDebugAndroidTest运行检测测试 格雷德尔脚本 android { defaultConfig {

我正在尝试将我的项目更新到最近发布的Android测试支持库版本1.0.0。但如果我添加
assertjcore
dependency-Gradle检测测试任务开始失败,并显示“未找到测试”消息。不过,我可以从IDE成功运行单个测试

很容易重现问题:

  • 使用空活动从Android Studio 3创建新项目
  • 添加
    assertjcore
    依赖项
  • 从命令行
    /gradlew connectedDebugAndroidTest
    运行检测测试
  • 格雷德尔脚本

    android {
        defaultConfig {
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        }
    }
    
    dependencies {
        implementation 'com.android.support:appcompat-v7:26.0.0'
        implementation 'com.android.support.constraint:constraint-layout:1.0.2'
        testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.0'
        androidTestImplementation group: "org.assertj", name: "assertj-core", version: "2.8.0"
    }
    
    控制台输出

    com.android.builder.testing.ConnectedDevice > No tests found.
    [Nexus_4_API_25(AVD) - 7.1.1] FAILED 
    No tests found. This usually means that your test classes are not in the form that your test runner expects (e.g. don't inherit from TestCase or lack @Test annotations).
    

    如果将com.android.support.test:runner降级到以前的版本0.5则测试成功运行,除非至少有一个测试用例的名称以
    test
    开头,否则我的测试用例未被拾取

    我创建了一个被忽略的虚拟测试用例:

    @Test
    fun testDummy() {
        Assume.assumeTrue(false)
    }
    

    您是否尝试过使用@azizbekian with assertj 3.8编译失败,原因是
    com.android.dx.cf.code.SimException:使用默认或静态接口方法,但不使用--min sdk版本>=24
    。我想3.x分支需要android平台不支持的Java8功能。我的目标是MinAPI15 btw.try
    org.junit.Assert
    org.junit.Test
    org.junit.RunWith
    …和
    @RunWith(AndroidJUnit4.class)