国庆已经过去了,新的一周已经开始了,各地疫情又开始出现复发了,我们能做的就是做好个人防护、去哪报备、到哪扫码亮码、主动做核酸、随时做好家里存储至少一周的食物,拒绝过度防疫,拒绝过度恐慌,拒绝过度焦虑。有工作的最起码还有钱能到手,没有工作的可能生活都是问题,不要问为什么瘦了几十斤,因为学习很累,拼命学习更累,加油,年轻人。看完单纯的点个赞,评论一下,收藏一下,这样互动一下,才能让费心费力整理内容的作者更加动力十足,就像现在的短视频,没有赞,没有评论,就没有更多的流量,就没有更多人的关注,也就没有更新的动力了。
这次总结的是(一)移动端(APP)自动化测试-基础知识。
参赛话题:学习笔记
目 录
一、移动端的认识
1、定义
(1)狭义
智能手机、笔记本电脑等设备
(2)广义
所有可移动的设备,如手机、穿戴设备(手环手表等)、平板、笔记本、点菜设备、移动机器人、POS机、扫码枪等
2、移动端操作系统
IOS(商用Unix系统)
Android(谷歌、开源)
HarmonyOS(华为鸿蒙)
Windows Phone
Symbian/meego
Windows Mobile
Blackberry
3、移动端应用
(1)狭义
原生APP,偏向于交互,注重用户体验,需访问硬件的功能;
如计算器、日历、录音机等。
(2)广义
Web APP:H5,偏向于于浏览器简单交互,用于信息展示
混合APP:原生APP与Web APP融合,核心功能使用APP,辅助功能呢使用Web APP
小程序:微信、支付宝、百度等,部署于服务器,直接调用接口
4、手机测试分类
(1)传统手机测试
测试手机本身,如抗压、抗摔、抗疲劳、抗低温高温等。
(2)手机APP测试
基于手机操作系统上开发的软件测试。
5、移动端测试复杂性
(1)网络多样化
弱网(2G/3G)、4G、5G、WIFI
(2)支持系统多样化
各类手机操作系统
(3)硬件配置多样化
内存(ROM)大小种类、核心数量等
(4)分辨率类型多样化
各类大小屏幕720*1280、1080*1920
移动端软件测试定义:在多种网络、不同操作系统、不同分辨率、不同硬件配置下发现软件缺陷,并保证提高软件质量的过程。
二、与PC端软件测试的区别
|--------------|------------------------------------|------------------------------------|
| 比较点 | 移动应用 | PC应用 |
| 应用类型 | Native APP、Web APP以及混合型APP | Client和Web |
| 操作方式 | 多点触摸 | 鼠标和键盘 |
| 界面布局 | 操作界面少,流程简单 | 操作界面复杂且流程复杂 |
| 设备尺寸 | 移动设备屏幕小,手机和平板的屏幕尺寸相差巨大,且各自屏幕大小种类繁多 | PC显示屏幕大且其软件应用也不受屏幕限制 |
| 功能 | 强调主要功能以及用户常用功能 | 支持全部功能 |
| 设备网络连接方式 | 主要是2G、3G、4G、5G、WIFI | 有线方式或者WIFI |
| 应用设备限制 | 存储空间小,连接不稳定、带宽较小,流量费用限制、移动互联网上的风险等 | 存储空间大,带宽较相对较宽,连接一般也比较稳定,各种安全软件安装齐全 |
| 用户使用习惯 | 移动用户随时随地就会使用移动软件应用,强调移动性 | 用户一般在固定的地点使用PC应用 |
[移动端与PC端软件测试的区别]
三、移动端测试流程
四、移动端测试要点
1、安装、卸载测试
(1)安装测试
从不同的取到获取安装程序是否正常安装。
Android APP:由开发提供,在手机或安卓模拟器(iTools、夜神、逍遥、版本要一致)安装即可;
IOS APP:直接分发(前提:APP有苹果的企业证书)
苹果测试手机的UDID(iTunes连接手机,点击序列号,但不能复制;IOS4.0以上手机装UDID Helper;手机连接的Mac电脑的XCode会弹出Organizer,在设备的Summary中会显示UDID,可复制)发给开发人员,让开发人员将UDID打包到APP里面即可(前提:APP无苹果的企业证书)
APP里面绑定UDID有限制,若超标使用testflight (苹果官方测试工具)分发,需提供测试人员的appleID(即邮箱账号),从testflight下载安装包及邀请码即可安装测试
软件在不同操作系统版本下安装是否正常。
兼容性测试
软件安装后是否能够正常运行,安装后的文件夹及文件是否写到了指定的目录里。
如果闪退,属于兼容性测试;
APP的文件夹位置、临时文件夹的位置;
未root之前可看到的文件及文件夹均可删除,重新启动会自动创建
安装后没有生成多余的目录结构和文件。
软件安装过程中意外情况(如死机、重启、断电)的处理是否符合需求。
如安装过程死机重启后是否还是继续安装或者重新安装(异常测试)
安装空间不足时是否有相应提示。
异常测试
对于需要通过网络验证之类的安装,在断网情况下尝试一下。
异常测试
还需要对安装手册进行测试,依照安装手册是否能顺利安装。
文档测试
(2)卸载测试
直接删除安装文件夹卸载是否有提示信息。
一般会有警告
直接卸载程序是否有提示信息。
一般会有是否卸载提示
卸载后是否全部删除所有的安装文件夹。
安全测试涉及;
两种处理方式:提示个人数据文件夹会保留、安装文件夹及临时文件夹都删除
卸载过程中出现的意外情况(如死机、重启、断电)的测试。
系统直接卸载UI测试,是否有卸载状态进度条提示。
静默卸载
2、UI测试
对照产品设计-原型图
(1)导航测试
按钮、对话框、列表和窗口等,或在不同的连接页面之间需要导航。
是否易于导航、导航是否直观。
是否需要搜索引擎。
导航帮助是否准确直观导航与页面结构、菜单、连接页面的风格是否一致。
(2)图形测试
横向比较,各控件操作方式统一。
自适应界面设计,内容根据窗口大小自适应。
页面标签风格是否统一。
页面的图片应有其实际意义而要求整体有序美观。
图片质量要高且图片尺寸在设计符合要求的情况下应尽量小。
界面整体使用的颜色不宜居多。
(3)内容测试
输入框说明文字的内容与系统功能是否一致。
文字长度是否加以限制。
文字内容是否表意不明。
是否有错别字。
信息是否为中文显示。
是否有敏感性词汇、关键字。
是否有敏感性图片,如:涉及版权、专利、隐私等图片。
3、功能测试
对照需求文档
(1)运行APP
APP安装完成后的试运行,可正常打开软件。
APP打开测试,是否有加载状态进度提示。
APP打开速度测试,速度是否可观。
APP页面间的切换是否流畅,逻辑是否正确。
注册。
登录。
注销。
(2)应用的前后台切换
APP切换到后台,再回到APP,检查是否停留在上一次的操作界面。
APP切换到后台,再回到APP,检查功能及应用状态是否正常。
APP切换到后台,再回到APP,注意程序是否崩溃,功能状态是否正常。
手机锁屏解屏后进入AOO注意是否会崩溃,功能状态是否正常。
当APP使用过程中有电话进来中断后再切换到APP,功能状态是否正常。
当杀掉APP进程后,再开启APP,APP能否正常启动。
出现必须处理的提示框后,切换到后台,再切换回来,检查提示框是否还存在,有时候会出现应用自动跳过提示框的缺陷。
对于有数据交换的页面,每个页面都必须要进行前后台切换、锁屏的测试,这种页面最容易出现崩溃。
(3)免登录
很多应用提供免登录功能。当应用开启时自动以上一次登录的用户身份来使用APP。
APP有免登录功能时,需要考虑版本差异。考虑无网络情况时能否正常进入免登录状态。
切换用户登录后,要校验用户登录信息及数据内容是否相应更新,确保原用户退出。
根据现有规则,一个账户只允许登录一台机器。所以,需要检查一个账户登录多台手机的情况。原手机里的用户需要被踢出,给出友好提示。
APP切换到后台,再切回前台的校验。
密码更换后,检查有数据交换时是否进行了有效身份的校验。
支持自动登录的应用在进行数据交换时,检查系统是否能自动登录成功并且数据操作无误。
检查用户主动退出登录后,下次启动APP,应停留在登录界面。
(4)数据更新
需要确定哪些地方需要提供手动刷新,哪些地方需要自动刷新,哪些地方需要手动+自动更新。
确定哪些地方从后台切换回前台时需要进行数据更新。
根据业务、速度及流量的合理分配,确定哪些内容需要实时更新,哪些需要定时更新。
确定数据展示部分的处理逻辑,是每次从服务端请求,还是有缓存到本地,这样才能有针对性的进行相应测试,
检查有数据交换的地方,均有相应的异常处理。
(5)离线浏览
很多应用会支持离线浏览,即在本地客户端会缓存一部分数据供用户查看。
在无网络情况可以浏览本地数据。退出APP再开启APP时能正常浏览。
切换到后台再切回前台可以正常浏览。
锁屏后再解屏回到应用前台可以正常浏览。
在对服务端的数据有更新时会给予离线的相应提示。
(6)APP更新
当客户端有新版本时,有更新提示。
当版本为非强制升级版时,用户可以取消更新,老版本能正常使用。用户在下次启动APP时,仍能出现更新提示。
当版本为强制升级版时,当给出强制更新后用户没有做更新时,退出客户端。下次启动APP时,仍出现强制升级提示。
当客户端有新版本时,在本地不删除客户端的情况下,直接更新检查是否能正常更新。
当客户端有新版本时,在本地不删除客户端的情况下,检查更新后的客户端功能是否是新版本。
当客户端有新版本时,在本地不删除客户端的情况下,检查资源同名文件如图片是否能正常更新成最新版本。
如果以上无法更新成功的,都属于缺陷。
(7)定位、照相机服务
APP有用到相机、定位服务时,需要注意系统版本差异。
有用到定位服务、照相机服务的地方,需要进行前后台的切换测试,检查应用是否正常。
当定位服务没有开启时,使用定位服务,会友好性弹出是否允许设置定位提示。当确定允许开启定位时,能自动跳转到定位设置中开启定位服务。
测试定位、照相机服务时,需要采用真机进行测试。
(8)时间测试
客户端可以自行设置手机的时区、时间,因此需要校验该设置对APP的影响。
---中国为东8区,所以当手机设置的时间非东8区时,查看需要显示时间的地方,时间是否展示正确。应用功能是否正常。时间一般需要根据服务器时间再转换成客户端对应的时区来展示,这样的用户体验比较好。
比如发表一篇微博在服务端记录的是10:00,此时,华盛顿时间为22:00,客户端去浏览时,如果设置的是华盛顿时间,则显示的发表时间即为22:00,当时间设回东8区时间时,再查看则显示为10:00。
(9)PUSH测试
检查PUSH消息是否按照指定的业务规则发送。检查不接受推送消息时,检查用户不会再接收到PUSH。
如果用户设置了免打扰的时间段,检查在免打扰时间段内,用户接收不到PUSH。在非免打扰to时间段,用户能正常收到PUSH。
当PUSH消息是针对登录用户的时候,需要检查收到的PUSH与用户身份是否相符,没有错误地将其它人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。
测试PUSH时,需要采用真机进行测试。
4、性能测试
兼容性
(1)极限测试
在各种边界压力情况下,如电池、存储、网速等,验证APP是否能正确响应。
内存满时安装APP;运行APP时手机断电;
运行APP时断掉网络。
(2)响应能力测试
测试APP中的各类操作是否满足用户响应时间要求。
APP安装、卸载的响应时间;APP各类功能性操作的影响时间。
(3)压力测试
反复长期操作下,系统资源是否占用异常。
APP反复进行安装、卸载,查看系统资源是否正常;其他功能反复进行操作,查看系统资源是否正常。
(4)性能评估
评估典型用户应用场景下, 系统资源的使用情况。
(5)基线测试(设定性能基准)
与竞争产品的Benchmarking(标杆管理),产品演变对比测试等。
5、交叉事件测试
(1)含义
事件或冲突测试,是指一个功能正在执行过程中,同时另外一个事件对该过程进行干扰的测试。
(2)测试要点
多个APP同时运行是否影响正常功能。
APP运行时前/后台切换是否影响正常功能。
APP运行时拨打/接听电话。
APP运行时发送/接收信息。
APP运行时发送/收取邮件。
APP运行时切换网络(2G、3G、4G、5G、WIFI)
APP运行时浏览网络。
APP运行时使用蓝牙传送/接收数据。
APP运行时使用相机、计算器等手机自带设备。
6、兼容测试
(1)发版前必须进行兼容性测试;
(2)必须在真机上进行;
自购设备 -当前主流50款手机-时效性Android设备
-不同品牌-华为、荣耀、小米、魅族、OPPO、VIVO、one plus、三星、Nexus
-同一品牌不同系列-mate、P、nova、畅享、小米、红米、note、max
-同一品牌同一系列 -处理器不同、内存不同、屏幕不同、系统版本不同、网络制式不同
-Android版本兼容-至少往前兼容两个版本、碎片化问题(系统不更新、老年使用较多)
IOS设备
-IOS系统闭源,没有碎片化问题
-苹果设备单元-IPhone4-IPhone14、P系列、IPAD、IPOD
在线服务-发版测试-探索(Bug探索、用例设计、用例执行)→验证(Bug回归、用例回归)→健壮(安全测试、性能测试、兼容测试)→深度验证(安全验证、性能验证、兼容验证)→验收(Bug探索、用例执行、兼容测试)
网络制式:就是网络的类型,我国手机的网络制式有CDMA手机占用的CDMA 1X,800MHZ频段;GSM手机占用的900/1800/1900MHZ 频段;近两年的GSM 1X双模(即WCDMA)占用的900/1800MHZ频段;3G占用的900/1800/1900/2100MHz频段;4G占用的1920--2170MHZ频段。联通4GTD LTE占用的2555-2575MHz,2300-2320MHz频段(仅限室内使用)
(3)手工对不同手机测试、自动化云测试
与本地及主流APP兼容;不同操作系统兼容;
不同手机品牌兼容;
不同屏幕分辨率兼容;
不同网络兼容。
7、升级、更新测试
内部程序推送更新、自动更新、强制更新才可以用
8、用户体验测试
常用用户、内测用户
9、硬件环境测试
CPU芯片、内核
10、客户端数据库测试
数据库服务器
11、安全测试
安全漏洞、是否被破解
五、移动端APP云众测
有好用的云众测平台,希望大家来评论留言,赚点生活费。
愿你我都能为中华民族的伟大复兴尽一份绵薄力量,让中华文化的根扎根在中国这片绿水青山之上,让新一代中华儿女传承与发扬!!!
---无名之辈
以上内容均是本人自学,当然是有网上公布的内容,如有冒犯,请留言,立即改正,谢谢!
看完要是觉得对自己有用,动一下您那根金色的会一指禅的右手食指,按一下您的鼠标左键,在对应的那个位置点个赞,亦或者在评论区留下您的绝顶好句,亦或者收藏在您的收藏夹里,再走也不迟嘛!您说要不要得!谢谢您的阅读和赞赏!