Android开发人员的移动测试

单元测试

单元测试将在应用程序中编写的测试块——约占总测试的 70%。它们是小型、高度集中的测试,可以直接在本地开发机器上运行,并且由于它们直接在本地环境中运行,因此速度非常快。

应该为小型业务单元和应用程序逻辑编写这些类型的测试。每个测试都应该是小规模的、有针对性的,并且只测试一个特定的场景,仅此而已。可能有数百个(甚至数千个)这样的测试,并且在开发应用程序时会经常运行它们。

这些测试的唯一缺点是它们不能在真实设备上运行,并且它们对具有真实数据的真实世界情况的保真度可能较低。

集成测试

应该尝试在真实设备而不是本地机器上运行这些测试。它们广泛用于测试不同模块或组件之间的集成是否有效。通常,这些测试是中等规模的,应该占应用编写的总测试的20%左右。

在 Android 中,集成测试的一个简单示例是检查单击特定Activity的按钮是否会将带到不同的Activity。因为这些测试在真实设备或模拟器上运行,所以它们往往比单元测试慢得多,而且通常希望运行它们的频率要低得多。

端到端测试

将只为应用编写其中的几个测试。大约10%的总测试应该是端到端测试。将使用这些类型的测试从头到尾完整地检查用户流。

多步骤用户注册流程是想要编写端到端测试的示例用例。与集成测试一样,这些测试应该在真实设备或模拟器上运行。这意味着它们会更慢,所以你会希望不那么频繁地运行它们。

这些测试的保真度要高得多,因为它们在真实硬件上模拟真实用例(如果使用真实设备进行测试)。但需要注意的是,如果测试失败,则很难调试出问题所在,因为测试必须检查如此多的活动部件。

Android中的测试类型

现在让我们尝试了解通常会在Android上编写的测试类型。它们与上一节中讨论的内容没有太大区别,但在Android中,我们倾向于根据它们是在真实设备上还是在模拟器上运行来对测试进行分类。

本地单元测试

可以在开发机器上本地运行这些测试,因为这样做与在移动设备上进行测试之间没有太大区别(因为这些测试检查功能,而不是性能)。这些测试位于路径module/src/test/java下,无法访问任何Android框架API。

假设有一个名为validateEmailAddress(String)的方法,并且测试该方法的功能。当传递给此方法的电子邮件为空、空或无效时。

对于Java中的单元测试,常用的工具是JUnit。还可以使用另一个流行的测试框架Robolectric,它允许对Android依赖项进行单元测试。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值