移动应用专项测试思路和方法
在之前的文章简单介绍了移动端应用类型及特点https://blog.csdn.net/dou_being/article/details/119304770,这篇文章主要介绍Web App、Native App 和 Hybrid App三类不同移动应用的测试方法以及移动应用专项测试的思路和方法:
一、Web App、Native App 和 Hybrid App三类不同移动应用的测试方法
1、Web App测试:其本质就是 Web 浏览器的测试,测试方法基本上同Web浏览器测试
2、Native App测试:不同的平台会使用不同的自动化测试方案,比如,iOS 一般采用 XCUITest Driver,而 Android 一般采用 UiAutomator2 或者 Espresso 等。但是数据驱动、页面对象以及业务流程封装的思想是相通的,可以把这些方法应用到测试用例设计中
3、Hybrid App 测试:对 Native Container 的测试,可能需要用到 XCUITest 或者 UiAutomator2 这样的原生测试框架,而对 Container 中 HTML5 的测试,基本和传统的网页测试没什么区别,所以原本基于 GUI 的测试思想和方法都能继续适用。
注意:Native Container 和 Webview 分别属于两个不同的上下文(Context),Native Container 默认的 Context 为“NATIVE APP",而 Webview 默认的 Context 为“WEBVIEW_+ 被测进程名称”
二、移动应用专项测试的思路和方法
1.移动应用专项测试最主要的有:交叉事件测试、兼容性测试、流量测试、耗电量测试、弱网络测试、边界测试
2.交叉事件测试:
(1)交叉事件测试也叫中断测试,是指 App 执行过程中,有其他事件或者应用中断当前应用执行的测试。比如,App 在前台运行过程中,突然有电话打进来,或者收到短信,再或者是系统闹钟等等情况。
(2)交叉事件测试,需要覆盖的场景主要包括:
App 运行时接听电话
App 运行时接收信息
App 运行时提示系统升级
App 运行时发生系统闹钟事件
App 运行时进入低电量模式
App 运行时第三方安全软件弹出告警
App 运行时发生网络切换,比如,由 Wifi 切换到移动 4G 网络,或者从 4G 网络切换到 3G 网络等
(3)此类测试目前基本还都是采用手工测试的方式,并且都是在真机上进行,不会使用模拟器。
3.兼容性测试:
(1)容性测试顾名思义就是,要确保 App 在各种终端设备、各种操作系统版本、各种屏幕分辨率、各种网络环境下,功能的正确性。
(2)常见的App兼容性测试主要覆盖以下场景:
不同操作系统的兼容性,包括主流的 Andoird 和 iOS 版本
主流的设备分辨率下的兼容性
主流移动终端机型的兼容性
同一操作系统中,不同语言设置时的兼容性
不同网络连接下的兼容性,比如 Wifi、GPRS、EDGE、CDMA200 等
在单一设备上,与主流热门 App 的兼容性,比如微信、抖音、淘宝等
(3)兼容性测试,通常都需要在各种真机上执行相同或者类似的测试用例,所以往往采用自动化测试的手段。
4.流量测试:
(1)由于 App 经常需要在移动互联网环境下运行,而移动互联网通常按照实际使用流量计费,所以如果 App 耗费的流量过多,那么一定不会很受欢迎
(2)流量测试通常包含以下几方面的内容:
App 执行业务操作引起的流量
App 在后台运行时的消耗流量
App 安装完成后首次启动耗费的流量
App 安装包本身的大小
App 内购买或者升级需要的流量
(3)流量测试,往往借助于 Android 和 iOS 自带的工具进行流量统计,也可以利用 tcpdump、Wireshark 、 Fiddler 和Charles等网络分析工具
(4)对于 Android 系统,网络流量信息通常存储在 /proc/net/dev 目录下,也可以直接利用 ADB 工具获取实时的流量信息
(5)对于 iOS 系统,可以使用 Xcode 自带的性能分析工具集中的 Network Activity,分析具体的流量使用情况
(6)减少app消耗流量的一些常用方法:
启用数据压缩,尤其是图片
使用优化的数据格式,比如同样信息量的 JSON 文件就要比 XML 文件小
遇到既需要加密又需要压缩的场景,一定是先压缩再加密
减少单次 GUI 操作触发的后台调用数量
每次回传数据尽可能只包括必要的数据
启用客户端的缓存机制
5.耗电量测试:
(1)耗电量测试主要从3个方面来考量:
App 运行但没有执行业务操作时的耗电量
App 运行且密集执行业务操作时的耗电量
App 后台运行的耗电量
(2)耗电量检测方法:
Android 通过 adb 命令“adb shell dumpsys battery”来获取应用的耗电量信息
iOS 通过 Apple 的官方工具 Sysdiagnose 来收集耗电量信息,然后,可以进一步通过 Instrument 工具链中的 Energy Diagnostics 进行耗电量分析
6.弱网测试:
(1)移动应用的测试需要保证在复杂网络环境下的质量。具体的做法就是:在测试阶段,模拟这些网络环境,在 App 发布前尽可能多地发现并修复问题
7.边界测试:
(1)边界测试是指,移动 App 在一些临界状态下的行为功能的验证测试,基本思路是需要找出各种潜在的临界场景,并对每一类临界场景做验证和测试
(2)主要场景:
系统内存占用大于 90%
系统存储占用大于 95%
飞行模式来回切换
App 不具有某些系统访问权限的场景,比如 App 由于隐私设置不能访问相册或者通讯录等
长时间使用 App,系统资源是否有异常,比如内存泄漏、过多的链接数等
出现 ANR 的场景
操作系统时间早于或者晚于标准时间
时区切换的场景
欢迎关注公众号:
移动应用专项测试思路和方法相关推荐
- 【软件测试工程师】App 应用测试方法以及测试思路
分析三种主流的移动 App 类型,并给出和普通web测试不同的地方,给出测试的思路,并给出部分场景组合. 移动端测试还是 PC 端测试,业务测试其实都属于 GUI 测试的范畴,所以基本的测试思路,比如 ...
- App 应用测试方法以及测试思路……
分析三种主流的移动 App 类型,并给出和普通web测试不同的地方,给出测试的思路,并给出部分场景组合. 移动端测试还是 PC 端测试,业务测试其实都属于 GUI 测试的范畴,所以基本的测试思路,比如 ...
- App 应用测试方法以及测试思路
分析三种主流的移动 App 类型,并给出和普通web测试不同的地方,给出测试的思路,并给出部分场景组合. 移动端测试还是 PC 端测试,业务测试其实都属于 GUI 测试的范畴,所以基本的测试思路,比如 ...
- 移动app应用测试方法与测试思路(德鲁)
1 三种移动端产品类型的介绍 2 移动端应用的测试其自身特点,和其他传统测试又有一些独特 3 测试方法和思路. 4 5 移动端应用又可以进一步细分为三大类: 6 Web APP 指的是移动端的Web浏 ...
- Android测试solo,SoloPi支付宝开源的 Android 专项测试工具的介绍与快速上手
SoloPi支付宝开源的 Android 专项测试工具的介绍与快速上手 SoloPi:支付宝开源的 Android 专项测试工具的介绍与快速上手 MTSC2019大会上,Soloπ算是一次正式的在公众 ...
- 移动应用专项测试的思路和方法
对于移动应用,顺利完成全部业务功能测试往往是不够的.如果你的关注点只是业务功能测试,那么, 当你的移动应用被大量用户安装和使用时,就会暴露出很多之前完全没有预料到的问题,比如: 流量使用过多: 耗电量 ...
- 简单学习kali高级渗透测试思路方法
前言 KaliLinux面向专业的渗透测试和安全审计,集成了大量精心挑选的安全检测工具.Kali Linux高级渗透测试在KaliLinux平台上从一个攻击者的角度来审视网络框架,详细介绍了攻击者&q ...
- 渗透测试-靶机打靶思路与方法
渗透测试-靶机打靶思路与方法 文章目录 渗透测试-靶机打靶思路与方法 一.对靶机进行信息收集 1.首先对目标存活靶机发起嗅探: 2.对目标主机开放端口及服务发起探测 3.对非web端口的服务发起迅速的 ...
- 【测试】编写测试用例的思路和方法
文章目录 1)什么是测试用例? 1.1 测试用例的定义 测试用例的内容: *为什么需要测试用例? 测试用例的作用: 1.2 测试用例的元素 测试目标(Why): 测试对象(What): 测试环境(Wh ...
最新文章
- 腾讯云CMQ消息队列在Windows环境下的使用
- 我来告诉你考研还是找工作!
- spring中的依赖注入——构造函数注入、set方法注入( 更常用的方式)、复杂类型的注入/集合类型的注入
- qt5.5 静态编译 mysql_QT5.3.2+mingw静态编译(生成exe大约14M)
- Oracle修改表结构字段名和字段长度
- UI实用素材模板|天气应用app的ui设计
- Linux 中断所有知识点
- 【003】【深入解析Java中volatile关键字的作用】
- 中国食品安全检测市场专项调研及投资前景预测报告2022-2027年
- 比CAM350好用的工具-DFM工具下载,PCB被板厂做坏了,谁的锅?
- JavaEE下宠物领养网站的设计与实现
- 425_PICkit2烧写PIC18F4580 MCU
- 苹果系统简易音乐播放器
- 外汇短线交易者的规则
- CornerNet,CenterNet关键代码解读: kp,_decode,left pooling
- 软件测试中常用的简称
- oracle 11g新的后台进程
- wince挂起和唤醒_relayon
- 我在深圳这10年,历经的房价和我买房的故事
- 特征工程——缺失值显示和填充(集中趋势(众数、平均数、中位数)、缺失值矩阵图、条形图、集中趋势填充)