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

无法运行android的espresso测试

锺离嘉容
2023-03-14

我有一些问题设置/运行espresso测试的Android。我的TestClass如下所示:-

import static com.google.android.apps.common.testing.ui.espresso.Espresso.onView;
import static com.google.android.apps.common.testing.ui.espresso.action.ViewActions.click;
import static com.google.android.apps.common.testing.ui.espresso.assertion.ViewAssertions.matches;
import static com.google.android.apps.common.testing.ui.espresso.matcher.ViewMatchers.withId;
import static com.google.android.apps.common.testing.ui.espresso.matcher.ViewMatchers.withText;
import android.test.ActivityInstrumentationTestCase2;
import android.util.Log;

import com.sample.rasmus.MainActivity;

public class BasicTest extends ActivityInstrumentationTestCase2<MainActivity> {

public BasicTest(String name) {
    super(MainActivity.class);
    Log.v("amtesting","2");
}
 @Override
  public void setUp() throws Exception {
      Log.v("amtesting","5");
    super.setUp();
    Log.v("amtesting","4");
    // Espresso will not launch our activity for us, we must launch it via getActivity().
    getActivity();
  }

public void testSimpleClickAndCheckText(){
    Log.v("amtesting","1");
    onView(withId(com.sample.rasmus.R.id.thebutton)).perform(click());
    onView(withId(com.sample.rasmus.R.id.helloworld)).check(matches(withText("awesome")));
}

protected void tearDown() throws Exception {
    Log.v("amtesting","3");
    super.tearDown();

}

  }
<?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sample.rasmus.test"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk android:minSdkVersion="14" />

<instrumentation
    android:name="com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner"
    android:targetPackage="com.sample.rasmus" />

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <uses-library android:name="android.test.runner" />
</application>

 </manifest>
  • 在设备仿真器-5554上启动检测Android.test.InstrumentationTestRunner
  • 向Eclipse发送测试信息
  • 测试完成

没有提到运行测试,测试也不会运行。我会错过什么?

共有1个答案

邓阳炎
2023-03-14

这就是我最终解决它的方法。我将测试类的构造函数更改为下面:-

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

开始奏效了。奇怪的是,这是让我忙了一整天的原因。

 类似资料:
  • null 和之间的主要区别是什么? 必须修改源代码才能集成这些框架吗? 一个框架比另一个框架有什么优势吗?如果是,那么哪个框架最适合Android应用程序的UI自动化?

  • 本文向大家介绍Android 创建Espresso测试类,包括了Android 创建Espresso测试类的使用技巧和注意事项,需要的朋友参考一下 示例 将下一个Java类放在src / androidTest / java中并运行它。            

  • 因为我们的测试环境不使用HTTPS,所以我们对Android 9的UI测试失败了。问题是,我们正在从espresso测试中进行网络调用(例如,直接在后端创建全新的用户以用于测试),这意味着它们在espresso测试应用程序上运行。 将networkSecurityConfig添加到应用程序清单无济于事,因为问题不在于应用程序,而在于espresso应用程序。 我怎么才能修好这个?espresso应

  • 本文向大家介绍Android利用Espresso进行UI自动化测试的方法详解,包括了Android利用Espresso进行UI自动化测试的方法详解的使用技巧和注意事项,需要的朋友参考一下 为什么需要UI自动化测试? 我有一个观点,对于重复的工作,那么程序都是可以代替的,我想这是作为一个程序员的一个基本素养(能偷懒的绝不干活)。UI自动化测试就是为了应付一些重复的工作,比如说测试某个功能,那么从应用

  • 首先,我已经关闭了所有的动画设置: 窗口动画比例 过渡动画比例 动画师持续时间刻度 最近,我需要为一个旧的Android项目(5年以上)添加Espresso测试用例,我没有足够的时间来挖掘所有的自定义视图。 浓缩咖啡盒: 然后它启动了应用程序,我确实看到了活动中的所有元素,但浓缩咖啡无限等待。

  • 在Android Espresso测试中有什么好的方法来测试结果代码和数据吗?我在用浓缩咖啡2.0。 定义一个新方法,如并使用该方法以便可以截获,等等。 编写一个只用于测试的TestActivity,它将调用上的,并在中检查结果 试着思考这两个坏处中什么是较小的,或者是否有任何其他关于如何测试这一点的建议。有什么建议吗?谢了!