app测试01_app测试漫谈

前言

  做app测试两年多了,最开始进行app测试时并没有了解过app测试的特性,只是和web测试一样进行着测试。一个个app版本发布后,发现app测试有他自己的特性,他很普通又很独特,在此总结下app测试的基础知识。

app不可逆性

  由于app代码都是打包好发布的,app具有不可逆性。一旦app版本发布成功,用户下载成功这个版本,只要不更新,这个版本上的代码都是固定的。当app本身出现问题时,只能发布新的版本,用户下载新的版本后问题才会解决,故app测试中回归测试至关重要。

app测试基础知识

1,功能测试&版本回归测试

功能测试

  在app测试过程时,当接到一个需求后主要流程为:分析需求 ->编写测试用例 ->测试用例评审&完善用例 ->冒烟测试 ->功能测试 ->回归测试。其中功能测试主要是对测试用例的执行和bug验证。测试并不是在功能测试阶段才介入的,早期需求确定后,测试便已经介入,测试和开发的工作的并行的,在开发阶段测试会先分析需求、编写测试用例,并进行测试用例评审。

版本回归测试

  在当前迭代需求中会有多个需求,当客户端迭代即将结束时会有一个版本回归,在版本回归过程中,各个业务线会将这个迭代中的所有需求合到一起,然后由测试进行集成测试、回归测试,以保证客户端的质量。

备注:

  • 客户端具有不可逆行-需注重回归测试
  • 新需求-需考虑版本控制

2,中断测试

指 App 执行过程中,有其他事件或者应用中断当前应用的执行。主要覆盖场景包括:

  • app运行时-接听电话
  • app运行时-接收短信、通知提醒
  • app运行时-系统发生闹铃事件
  • app运行时-提示系统升级
  • app运行时-开启低电量模式
  • app运行时-锁屏、前后台切换
  • app运行时-第三方app切换&切回app 

3,网络异常测试

app测试中常进行的网络异常测试如下:

  • 断网-恢复测试
  • 使用弱网进行测试
  • 网络切换测试:WiFi-切换4G、4G-切换WiFi

4,兼容性测试

  兼容性测试时,设备选择上常考虑三个因素:手机型号、分辨率、操作系统。

  手机型号一般从用户使用app活跃度top100中获取,这个数据可以从部门运营或者产品伙伴那里拉取数据获取。然后结合实际需求抽取部分Android、ios设备进行兼容性测试,例:从用户活跃表中挑选5款Android手机、5款ios手机进行兼容性测试。

  Android目前常见机型为:华为、小米、oppo、vivo;系统主要是:Android5、Android6、Android7、Android8、Android9、Android10、Android11。

  ios目前机型主要为:iPhone6、6P、7、7P、8、8P、X、XR、Xs、XS MAX、12、12 pro max;系统主要是:ios10、ios11、ios12、ios13、ios14。

备注:兼容性测试还可以使用云平台进行兼容性测试,例:使用云测平台进行兼容性测试,云测官网地址:https://www.testin.cn/

5,稳定性测试-monkey

  Android设备常使用monkey进行稳定性测试,monkey是Android系统自带的命令行工具,通过对系统发送伪随机的用户事件流,对系统进行压力测试。

  monkey测试基础指令:

adb shell monkey -p com.tencent.xxx -v -s 20 100

  参数含义:

    -p:指定测试的应用程序(后跟包名)

    -v:日志级别,共三类:-v、-v -v 、-v -v -v(v越多,日志越详细)
    -s:种子值,用来设置事件序列,通过设置相同的 seed,可以重复相同操作,用来复现操作
      数字100:表示随机事件数100

6,性能测试-perfdog

  客户端性能测试可使用工具perfdog。perfdog是一款移动端性能测试平台,支持Android、ios平台。可以在软件运行过程中监测性能指标、并生成测试报告。

  使用详情可参考:https://www.cnblogs.com/wetest/p/12745910.html

7,UI自动化测试-appium

  随着需求的增多,客户端版本回归的测试工作会逐渐加重,可以使用UI自动化对稳定的功能进行自动化测试,提高工作效率。

  使用appium+python进行UI自动化测试可参考以下文章:

 
原文地址:https://www.cnblogs.com/mini-monkey/p/14180929.html