千机游戏提供最新游戏下载和手游攻略!

关于APP软件测试的思考与实践

发布时间:2024-10-03浏览:72

这篇文章给大家聊聊关于关于APP软件测试的思考与实践,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

1.1.2图形测试

--- 根据窗口大小自适应--- 页面标签样式是否统一--- 页面上的图片整体要美观有序

1.1.3内容测试

---文字内容是否与系统功能一致---文字中是否有错别字---文字长度是否受到限制---是否存在敏感词、关键词、隐私等其他图片

1.2基础功能测试

1.2.1安装

---直接从App Store下载,检查是否支持正常安装、启动、运行、退出。 ---同一应用安装在不同版本的手机上,覆盖主流IOS系统,检查应用是否正常---直接从安卓应用市场下载,检查是否支持正常安装、启动、运行、退出- --从第三方网站下载的安装包,检查是否支持正常安装、启动、运行、退出---相同应用安装在不同的Android设备上,覆盖主流Android机型(华米OV)---不同Android系统安装同一个应用,覆盖主流Android系统---安装过程中可以取消安装吗? ---安装过程中,手机存储空间不足。安装会成功还是有提示? ---安装过程中,手机本身的意外情况如:死机、断电、关机、重启---安装过程中,外部的意外情况如:断线、网络弱、网络中断后恢复

1.2.2卸载

--- 手动按住删除,检查是否弹出卸载确认信息--- 卸载过程中,是否取消卸载--- 卸载过程中,手机出现意外情况本身如:死机、断电、关机、重启--- 卸载过程中,外部意外情况如:断线、网络弱、网络中断及恢复

1.2.3升级更新

---当APP更新新版本时,会出现更新提示提醒用户---当版本不是强制升级时,用户可以取消更新,可以使用旧版本通常情况下。用户下次启动应用程序时,仍会出现更新提示---版本强制升级时,且强制更新后用户在更新完成之前退出应用程序时,用户下次启动时应用程序仍会出现强制升级提示---版本更新后,检查功能是否正常---更新升级过程中出现意外情况,如死机、断电、重启等

1.2.4登录

--- 系统是否允许多次非法登录,是否有次数限制--- 使用已登录账号登录系统是否处理正确,一号一机、互斥原则---使用禁用的账号登录系统是否处理正确---登录账号和密码组合错误---原用户已不存在,重新登录---的处理登录超时---防止爬虫,登录时是否有图形验证码验证

1.2.5注销

---注销时是否有二次提示弹窗---用户注销后是否自动注销---原用户注销后系统能否正确处理新用户-- - 使用错误的帐号、密码、无权限退出被禁用的帐户

1.2.6 push

--- 检查推送消息是否按照指定的业务规则发送--- 检查用户未收到推送消息后是否不再收到推送消息--- 检查用户是否不再收到推送消息在设定的请勿打扰时间段内接收推送;免打扰时间段内,用户可以正常接收--- 推送消息仅针对已登录用户,且仅向应用内最后登录的用户推送消息--- 测试推送时,需要使用真实的机器测试

1.3各项业务测试

---各页面功能与需求文档一致---页面间关联、数据联动---用户界面、后台管理界面、数据库一致性验证---特殊操作测试:是否手势操作正常,长按、拖动、滑动、放大

二、交叉事件测试

2.1交互测试

备注:应用程序与其他应用程序是否正常交互--- 调用系统相机,检查相机是否可以正常打开,并正常拍照--- 调用系统相册,检查照片是否正常相册可以正常打开,并上传照片或视频——调用通讯录,检查通讯录是否可以正常打开并插入记录

2.2交叉事件测试

注意:应用程序运行期间,其他事件或应用程序会中断当前应用程序的执行。交互使用手机固有功能模块,如音量调节、屏幕锁定、旋转、返回键、主菜单键、截图、闹钟、待机、插拔数据线、耳机、wifi/3G/4G/5G 、蓝牙、电话、短信、相机、通讯录、低电量---当应用程序运行时,接听/拨打电话---当应用程序运行时,发送/接收短信---当应用程序运行时运行、网络切换发生等

2.3前后台的切换

---将APP切换到后台,然后返回APP,检查是否停留在上次操作页面。 ---将APP切换到后台,然后返回APP,检查功能和应用状态是否正常,特别是从后台切换回前台时数据自动更新。---切换APP回到后台,然后返回APP,注意软件是否崩溃并自动退出。---杀死APP进程后,再次打开APP,检查APP是否可以正常启动。 ---出现必须处理的提示框后,切换到后台,然后再切换回来,检查提示框是否还存在。有时会存在应用程序自动跳过提示框的缺陷。 ---对于有数据更新和数据交换的页面,每个页面都要进行前后切换和锁屏测试。此类页面最有可能崩溃。

三、弱网测试

3.1弱网功能测试

使用较弱的wifi、2G、3G、4G、5G 切换网络测试:wifi---2G/3G/4G/5G2G/3G/4G/5G---wifiwifi---无网络2G /3G/4G/5G---无网络wifi强---wifi弱无网络---wifi 无网络---2G/3G/4G/5G wifi弱---wifi强

3.2无网测试

直接断开网络断开网络重新连接

3.3弱网用户体验测试

页面显示--- 从头开始加载应显示异常提示--- 加载部分数据后页面断开,加载的数据是否正常显示,卸载的部分是否符合设计- -- 全部数据加载完毕后,网络断开网络重连后刷新页面会正常显示还是会覆盖现有数据? --- 友好的加载提示:进度条--- 超时机制--- 重连机制

3.4常用模拟弱网测试工具

charles,Fiddler,IOS自带开发者工具:Network Link Conditioner、Facebook开源Augmented Traffic Control (ATC)工具

回到顶部

四、权限测试

注:设置App是否可以获得该权限,例如是否可以访问通讯录、相册、相机等。

4.1主要权限

主要包含以下权限:---存储空间权限---拍照权限---获取设备识别码权限---通知权限---位置权限---麦克风权限---通讯录权限- --网络权限---短信读取权限

4.2权限设置

---从不---读、写---权限开、权限关、使用时主动查询、使用时被动触发授权

回到顶部

五、性能测试

5.1响应时间

---app启动:首次安装启动、冷启动、热启动、热启动---app交互:事件响应、内部加载速度、首屏渲染、过度渲染、帧率fps、CPU使用率、流量、功耗---接口性能:DNS加载时间、https请求数、下载时间---H5性能:缓存、资源加载时间

5.2启动性能

重点是检查启动时间---首次安装启动:首次安装需要较多时间初始化---冷启动:进程不存在---热启动:进程存在,界面不存在---首屏启动:首屏已完全加载

5.3接口性能

单个接口的数据返回时间请参考接口文档一一测试,全覆盖

5.4测试工具

---IOS:通过XCODE工具查看内存消耗、CPU、GPU ---Android:android studio工具的DDMS视图

回到顶部

六、安全测试

6.1授权验证

---扣费风险:发送短信、打电话、自动续费---隐私泄露风险:获取手机信息、访问联系方式---App输入有效性验证和认证、检测授权、敏感数据存储、数据加密等---检测App用户授权级别、数据泄露、非法授权访问等。

6.2数据传输

---当密码或其他敏感数据输入应用程序时,它们不会存储在设备上,并且密码不会被解码。 ---输入的密码不会以明文形式显示。---密码、信用卡详细信息或其他敏感数据不会存储在其预先输入的位置---不同应用程序的个人ID 或密码长度必须至少在4 到8 位数字之间

---备份应加密,数据恢复应考虑恢复过程中的异常通信中断等。数据恢复后应在使用前进行验证---应用程序不应模拟安全警告来误导用户,或使用误导性信息来欺骗用户---在删除数据之前,应用程序应该通知用户或者应用程序应该提供“取消”命令操作---应用程序应该有异常保护---如果数据库中的重要数据即将被覆盖,应及时告知用户

6.3通讯安全

---其软件运行过程中,如果有来电、短信、EMS、彩信、蓝牙、红外等通讯或充电,是否可以暂停程序,优先处理通讯,处理完成后软件能否正常恢复?继续其原有功能---建立连接时,应用程序可以处理由于网络连接而造成的中断,然后通知用户连接中断---应用程序将继续工作,直到通信超时,然后发送向用户显示一条错误消息,表明存在连接。错误---应该能够处理通信延迟或中断、网络异常并及时通知用户出现异常---App和后台服务一般通过HTTP交互,在HTTP环境下验证是否正常;---公开、免费在网络环境中(如麦当劳、星巴克等),必须输入用户名和密码,通过SSL认证才能访问网络。您需要使用HTTP Client 捕获库异常。

回到顶部

七、兼容性测试

--- 兼容不同操作系统:IOS、Andriod、HarmonyOS --- 兼容不同机型:iphone、华米VO、三星--- 兼容不同屏幕分辨率:各类手机尺寸--- 兼容不同APP:如果手机上同时安装了100个市面上主流软件,会不会被其他APP误认为是病毒软件? ---兼容不同语言:同一操作系统中不同语言设置的兼容性---兼容不同网络:保证wifi、3G、4G、5G、GPRS等不同网络的连通性。

回到顶部

八、稳定性测试

8.1测试方案

使用monkey测试app的稳定性:运行1000次,大约八个小时,检查日志文件,检查是否出现crash、anr、Exception、dump等字样

8.2影响app稳定性

内存问题---应用所需内存超过设备限制,导致应用崩溃崩溃---应用内存泄漏,耗尽所有设备内存导致整个系统崩溃-- - app内存越界,越权使用内存位置导致app崩溃程序逻辑错误---数组越界,如负索引、索引超出数组长度---堆栈溢出,如栈区缓冲区已满,栈为空时取数据等--- 并发操作,如并发时调用已释放的指针--- 逻辑错误,如除以0 作为除数等交互逻辑---app界面交换操作滑动导致app崩溃---未处理的中断或异常,如切换后台、接听电话、断网等用户意外操作。 网络因素。 ---网络不好,网络环境弱,无法达到app所需的快速响应时间,导致app崩溃---不同网络之间的切换

回到顶部

用户评论

颓废人士

之前一直不知道应该怎么测试app软件,看完这篇博文我总算明白了!作者分析的很透彻,还分享了很多实际操作方法,真的很实用。我要试试这些方法看看效果!

    有9位网友表示赞同!

煮酒

感觉这个标题很有吸引力啊,就忍不住点了进来看看。博主说的测试方法确实很全面,但我还是更喜欢用自己的方式来测试app,毕竟每个人的需求和使用习惯不一样吧。

    有19位网友表示赞同!

Hello爱情风

作者说得对,测一款app软件可不是简单的找个朋友帮忙点一下按钮!需要用心去体会用户的体验,找出潜在的bug。不过这个过程也挺有意思的哦~

    有7位网友表示赞同!

拉扯

我一直觉得测试只是交给专门的人去做的事情,没想到还能自己动手去实践。文章写的很详细,让我对测试有了更深入的理解。

    有19位网友表示赞同!

温柔腔

我之前做过软件开发,对于测试确实有很多想法。我觉得作者在这篇文章里提到了很多比较重要的点,比如关注用户体验、注重细节等等,都是值得我学习的地方!

    有8位网友表示赞同!

幸好是你

说实话,我一直觉得这种测试方法太复杂了,不如直接跟开发者沟通效率更高不是吗?不过文章写的还不错,起码让我明白了为什么需要这么麻烦的测试流程。

    有10位网友表示赞同!

坏小子不坏

博文写的真不错,分析的很到位,实用性很高。尤其喜欢那部分关于测试报告的描述,确实很有指导意义!现在我就可以自己去测我的APP了!

    有20位网友表示赞同!

眼角有泪°

作者讲的道理我都懂,但是实践起来是不是还需要更多的技巧?毕竟一个真正优秀的测试人员需要具备很多方面的能力吧?

    有16位网友表示赞同!

初阳

我觉得这篇文章总结的很到位,但我想补充一点:除了方法论之外,测试人员还需要具备良好的沟通和团队合作能力。这样才能更好地与开发人员协作,提高测试效率!

    有20位网友表示赞同!

万象皆为过客

虽然我还没使用过这些方法,但我感觉很有道理。我会认真研究一下,看看能不能应用到我的项目中去!

    有13位网友表示赞同!

泡泡龙

这个标题真是太吸引人了,感觉作者一定有一个很棒的测试经验和技巧。期待能详细了解一下他的思考和实战方法!

    有6位网友表示赞同!

强辩

测试APP软件确实是一个很重要的问题,文章提到的这些方法可以帮助我更好地进行测试,提高应用质量!

    有13位网友表示赞同!

挽手余生ら

博文内容很实用的同时,也让我对软件测试有了更加全面认识。作者的分析很有深度,值得我认真学习!

    有8位网友表示赞同!

冷落了♂自己·

感觉这个文章写的比较客观,没有过于主观的观点,而是以数据和案例为依据进行说明,让人更有信服力!

    有20位网友表示赞同!

走过海棠暮

我觉得可以再详细一些关于如何撰写测试报告的内容,毕竟这是一个重要的环节,对后续项目开发很有影响。

    有16位网友表示赞同!

微信名字

总的来说,文章写的很好,但对于新手小白来说,可能有些概念太深奥了,建议可以在文章开头做一些简单的基础知识介绍。

    有20位网友表示赞同!

炙年

我想问下作者,除了这篇文章提到的方法之外,还有哪些其他的测试技巧吗?比如如何进行压力测试等等,都是想要知道的!

    有14位网友表示赞同!

热点资讯