当前位置: 首页 > 知识库问答 >
问题:

生成espresso android测试用例时出错

唐啸
2023-03-14

Build.Gradle

apply plugin: 'com.android.application'
android {
    compileSdkVersion 24
    buildToolsVersion '25.0.0'
    defaultConfig {
        applicationId "com.example.project"
        minSdkVersion 18
        targetSdkVersion 24
        versionCode 27
        versionName "1.5"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            testCoverageEnabled true
        }
        debug{
            testCoverageEnabled true
        }
    }
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.github.barteksc:android-pdf-viewer:2.0.3'
    compile 'com.google.code.gson:gson:2.8.0'
    compile 'com.android.support:appcompat-v7:24.2.1'
    compile 'com.android.support:design:24.2.1'
    compile 'com.android.support:recyclerview-v7:24.2.1'
    compile 'com.android.support:cardview-v7:24.2.1'
    compile 'com.android.volley:volley:1.0.0'
    compile 'com.android.support:support-v4:24.2.1'
    compile 'com.google.firebase:firebase-messaging:10.0.1'
    compile 'com.google.firebase:firebase-core:10.0.1'
    compile 'com.google.firebase:firebase-crash:10.0.1'
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:support-annotations:24.2.0'
    androidTestCompile 'com.android.support.test:runner:0.2'
    androidTestCompile 'com.android.support.test:rules:0.2'
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.0'
    androidTestCompile 'com.android.support:support-annotations:24.2.1'
    androidTestCompile('com.android.support.test.espresso:espresso-contrib:2.2') {
        exclude group: 'com.android.support', module: 'appcompat'
        exclude group: 'com.android.support', module: 'support-v4'
        exclude group: 'com.android.support', module: 'support-v7'
        exclude group: 'com.android.support', module: 'design'
        exclude module: 'support-annotations'
        exclude module: 'recyclerview-v7'



    }
    androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1'
    androidTestCompile "com.android.support.test.espresso:espresso-intents:2.2.2"
}

apply plugin: 'com.google.gms.google-services'
apply plugin: 'jacoco'

task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) {

    reports {
        xml.enabled = true
        html.enabled = true
    }

    def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
    def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/debug", excludes: fileFilter)
    def mainSrc = "${project.projectDir}/src/main/java"

    sourceDirectories = files([mainSrc])
    classDirectories = files([debugTree])
    executionData = fileTree(dir: "$buildDir", includes: [
            "jacoco/testDebugUnitTest.exec",
            "outputs/code-coverage/connected/*coverage.ec"
    ])
}

共有1个答案

金英华
2023-03-14

有几件事让它运转起来:

  1. 请确保通过此其他线程检查所有必需项:https://stackoverflow.com/a/25525390/3195307
  2. 确保已连接设备可以执行测试。仿真器、物理设备或云设备。如果在IDE中播放测试,它应该显示在“连接的设备”下的“选择部署目标”中。
  3. 从项目目录运行Gradlew(项目分级包装器),如下所示:./Gradlew:app:createDebugCoverageReport
 类似资料:
  • 为了方便开发者对免登陆URL进行测试验证,下面提供一个测试用例,开发者可以参考下面的用例,使用相同的输入参数,看产生的签名与我们提供的签名是否一致。 原参数列表: appKey=77f869f734cc43d4b9357a66fd280626, appUid=1, sex=0, mobile=13366668888, nickName=变现猫, appEntrance=1, appHomeUrl

  • 为了方便开发者对免登陆URL进行测试验证,下面提供一个测试用例,开发者可以参考下面的用例,使用相同的输入参数,看产生的签名与我们提供的签名是否一致。 原参数列表: appKey=77f869f734cc43d4b9357a66fd280626, appUid=1, sex=0, mobile=13366668888, nickName=变现猫, appEntrance=1, appHomeUrl=

  • 为了方便开发者对免登陆URL进行测试验证,下面提供一个测试用例,开发者可以参考下面的用例,使用相同的输入参数,看产生的签名与我们提供的签名是否一致。 原参数列表: appKey=77f869f734cc43d4b9357a66fd280626, appUid=1, sex=0, mobile=13366668888, nickName=变现猫, appEntrance=1, appHomeUrl=

  • 遇到以下错误。无法确定确切的根本原因。 WebDriverException:无法连接到端口7055上的二进制FirefoxBinary(/usr/lib64/Firefox/Firefox);进程输出如下:错误:无法打开Display::99错误:无法打开Display::99 构建信息:版本:“2.45.0”,修订版:“32A636C”,时间:“2015-03-05 22:01:35”系统信息

  • 对于迁移管理,我决定使用Prisma Migrate,而不是节点pg Migrate(PostgreSQL)。我按照此链接中的说明操作,一切正常。然而,主要的挑战是,我的集成测试在尝试在测试数据库(而不是开发数据库)上运行迁移时失败。如何覆盖测试数据库的配置? 在节点pg migrate中,我可以在运行集成测试之前简单地提供配置:

  • 我已经完成了Eclipse Maven TestNG,我打算运行Selenium测试用例。 这是我的POM文件: 现在,当我尝试运行Maven测试时,我得到以下错误: 有人能告诉我我错过了什么吗。 提前谢谢。