使用Espresso测试Android用户界面

在本文中,您将学习如何使用Espresso测试框架编写UI测试以及如何自动化测试工作流程,而不是使用乏味且容易出错的手动过程。 Espresso是用于在Android中编写UI测试的测试框架。 根据官方文档,您可以: 使用Espresso编写简洁,美观且可靠的Android UI测试。 手动测试的问题之一是执行起来很耗时且乏味。 例如,要在Android应用中测试登录屏幕(手动)...
摘要由CSDN通过智能技术生成

在本文中,您将学习如何使用Espresso测试框架编写UI测试以及如何自动化测试工作流程,而不是使用乏味且容易出错的手动过程。

Espresso是用于在Android中编写UI测试的测试框架。 根据官方文档,您可以:

使用Espresso编写简洁,美观且可靠的Android UI测试。

1.为什么要使用意式浓缩咖啡?

手动测试的问题之一是执行起来很耗时且乏味。 例如,要在Android应用中测试登录屏幕(手动),您必须执行以下操作:

  1. 启动应用程序。
  2. 导航到登录屏幕。
  3. 确认usernameEditTextpasswordEditText是否可见。
  4. 在各自的字段中键入用户名和密码。
  5. 确认登录按钮是否也可见,然后单击该登录按钮。
  6. 检查该登录成功或失败时是否显示正确的视图。

与其花所有这些时间来手动测试我们的应用程序,不如花更多时间编写使我们的应用程序与众不同的代码! 而且,即使手动测试很繁琐且相当缓慢,它仍然容易出错,并且您可能会错过一些极端情况。

自动化测试的一些优点包括:

  • 自动化测试每次执行时都执行完全相同的测试用例。
  • 在将问题发送给质量检查团队之前,开发人员可以Swift发现问题。
  • 与进行手动测试不同,它可以节省大量时间。 通过节省时间,软件工程师和质量检查团队可以将更多的时间花费在具有挑战性和奖励性的任务上。
  • 实现了更高的测试覆盖率,从而带来了更高质量的应用程序。

在本教程中,我们将通过将Espresso集成到Android Studio项目中来对其进行学习。 我们将为登录屏幕和RecyclerView编写UI测试,并了解测试意图。

质量不是一种行为,而是一种习惯。 - 巴勃罗毕加索

2.先决条件

要遵循本教程,您需要:

可以在我们的GitHub存储库中找到本教程的示例项目(在Kotlin中),因此您可以轻松地继续学习。

3.创建一个Android Studio项目

启动您的Android Studio 3并创建一个名为MainActivity的空活动的新项目。 确保选中包括Kotlin支持

创建Android项目对话框

4.设置Espresso和AndroidJUnitRunner

创建新项目后,请确保在build.gradle中从Android测试支持库添加以下依赖 (尽管Android Studio已经为我们包括了它们)。 在本教程中,我们将使用最新的Espresso库版本3.0.2(截至撰写本文时)。

android {
    //...
    defaultConfig {
        //...
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    //...
}

dependencies {
    //...
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test:rules:1.0.2'

}

我们还包括了工具运行器AndroidJUnitRunner

针对Android包(应用程序)运行JUnit3和JUnit4的 Instrumentation进行测试。

请注意, Instrumentation只是用于实现应用程序工具代码的基类。

关闭动画

Espresso的同步(不知道如何等待动画完成)会导致某些测试失败-如果您允许在测试设备上播放动画。 要关闭测试设备上的动画,请转到“设置” >“ 开发人员选项” ,然后关闭“绘图”部分下的以下所有选项:

  • 窗口动画比例
  • 过渡动画比例
  • 动画师持续时间量表

5.在Espresso中编写您的第一个测试

首先,我们开始测试登录屏幕。 登录流程的开始过程如下:用户启动应用程序,并且显示的第一个屏幕包含一个“ 登录”按钮。 单击该登录按钮后,它将打开LoginActivity屏幕。 该屏幕仅包含两个EditText (用户名和密码字段)和一个Submit按钮。

这是我们的MainActivity布局:

MainActivity布局

这是我们的LoginActivity布局的样子:


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值