gpt4 book ai didi

android - espresso - 如何为自定义测试运行程序声明路径

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:12:14 26 4
gpt4 key购买 nike

我为 espresso 创建了一个自定义测试运行器,它看起来像这样:

    public class MyRunner extends AndroidJUnitRunner {
@Override
public Application newApplication(ClassLoader cl, String className, Context context)
throws Exception {
return super.newApplication(cl, MyCustomEspressoApplication.class.getName(), context);
}
}

我已将类放在 androidTest 文件夹中。可以吗?

现在我去 gradle 文件更新测试运行器,我把这个:

testInstrumentationRunner "com.mobile.myapp.base.MyRunner"

(这个路径可以吗?记得我把它放在 androidTest 文件夹中)。

我的一个测试类结构如下所示:

    @RunWith(AndroidJUnit4.class)

public class AuthenticationActivityTest {
//....

@Test
public void signupWithFacebook() {//...}
}

但是当我运行测试时,android studio 说它找不到测试运行程序。这是我得到的确切错误:

   Test running failed: Unable to find instrumentation info for:
ComponentInfo{com.mobile.myapp.labs.test/android.support.test.runner.AndroidJUnitRunner}

请再次注意我的自定义测试运行程序位于此处:androidTest-->java-->com-->mobile-->myapp-->base-->MyRun‌ ner.java

更新:下面是我正在尝试使用的自定义测试运行器:

    package com.mobile.myapp.base;

import android.support.test.runner.AndroidJUnitRunner;

import com.squareup.rx2.idler.Rx2Idler;

import io.reactivex.plugins.RxJavaPlugins;



public class MyRunner extends AndroidJUnitRunner {
@Override public void onStart() {
RxJavaPlugins.setInitComputationSchedulerHandler(
Rx2Idler.create("RxJava 2.x Computation Scheduler"));
// etc...

super.onStart();
}
}

当我检查生成的 android list 时,我看到了这个:

<instrumentation
android:name="com.mobile.myapp.base.MyRunner"
android:functionalTest="false"
android:handleProfiling="false"
android:label="Tests for com.mobile.myapp.labs"
android:targetPackage="com.mobile.myapp.labs" />

<application>
<uses-library android:name="android.test.runner" />
</application>

最佳答案

经过数小时的努力,终于弄明白了。这种组合让它发挥作用:

卸载当前应用程序。单击运行-->编辑配置并删除整个仪器测试配置,然后重新开始,删除运行区域中的所有测试配置。这是一张图片:

enter image description here

关于android - espresso - 如何为自定义测试运行程序声明路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46766996/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com