移动APP测试要点之性能、兼容、接口、交叉测试



之前有写过APP功能测试 和安全测试的要点,今天在分享一部分,包括,性能测试、兼容性测试、借口测试、交叉测试。

性能测试:评估App的时间和空间特性 ;

极限测试:在各种边界压力情况下,如电池、存储、网速等,验证App是否能正确响应。包括:内存满时安装App、运行App时手机断电、运行App时断掉网络

响应能力测试:测试App中的各类操作是否满足用户响应时间要求。包括:App安装、卸载的响应时间、App各类功能性操作的影响时间

压力测试:反复/长期操作下、系统资源是否占用异常。包括:App反复进行安装卸载,查看系统资源是否正常、其他功能反复进行操作,查看系统资源是否正常。

性能评估:评估典型用户应用场景下,系统资源的使用情况。

容量测试:即存储空间已满时的测试,包括手机用户可用内存和SIM卡的所有空间被完成使用的测试。此时再对可编辑的模块进行和存储空间有关的任何操作测试,如果软件在极限容量状态下处理不好,有可能导致死机或严重的花屏等问题出现。

兼容性测试:也就是不同系统框架,不同品牌、款型、分辨率的手机,不呕吐那个网络,不同容量大小的SIM卡之间的互相兼容测试。
具体包括:
1.与本地及主流App是否兼容
2.基于开发环境和生产环境的不同,检验在各种网络连接下(WiFi、GSM、GPRS、EDGE、WCDMA、CDMA1x、CDMA2000、HSPDA等),App的数据和运用是否正确
3.与各种设备是否兼容,若有跨系统支持则需要检验是否在各系统下,各种行为是否一致
4.不同操作系统的兼容性,是否适配
5.不同手机屏幕分辨率的兼容性
6.不同手机品牌的兼容性

接口测试:服务端一般会提供JSON格式的数据给客户端,所以我们在服务端需要进行接口测试,确保服务端提供的接口并转换的JSON内容正确,对分支、异常流有相应的返回值。此块测试可以采用itest框架进行测试。最方便的是采用httpclient进行接口测试。

交叉事件测试:在App测试 中又叫事件冲突测试,是指一个功能正在执行过程中,同时另外一个事件或操作对该过程进行干扰测试。如:App在前/后台运行状态时与来电、文件ixaz、音乐收听等关键运用的交互情况测试等。

包括:
多个App同时运行是否影响正常功能。
App运行时前/后台切换是否影响正常功能。
App运行时拨打/接听电话。
App运行时发送/接收信息。
App运行时发送/收取邮件。
App运行时切换网络(2G/3G/WIFI).
App运行浏览网页。
App运行时使用蓝牙传送/接收数据。
App运行时使用相机、计算器手机自带设备。
App运行时插拔充电器。

执行干扰的冲突事件不能导致软件应用软件异常、手机死机或者花屏等严重问题,还需要注意各交叉事件的优先级别,检验系统是否能依据各事件的优先级别依次进行处理。不能因执行优先级别高的事件而导致优先级别较低的事件吊死。另外有中英文模式切换的手机要注意中英文模式切换后的功能实现存在的问题。


#iOS工程师##安卓工程师#
全部评论

相关推荐

04-23 20:36
门头沟学院 Java
1. 自我介绍。2. 实习的系统大概是一个什么样的系统?3. 实习中主要负责了哪些内容?4. 你觉得这个系统的技术难点在哪里?5. 这个系统里需求开发和迭代的整体流程是怎样的?6. 拿到需求之后,你们是怎么做技术方案评估和评审的?7. 开发完成之后,code review 是怎么做的?8. 测试是怎么配合的?你自己会不会写单测?一般测到什么程度?9. 你参与的这套系统整体架构是怎样的?10. 从入口层、业务层到存储层分别是什么形态?涉及哪些中间件和组件?11. 服务是怎么部署的?是容器化部署还是其他方式?12. 这个 AI agent 项目主要是解决什么问题?为什么要做这样一套东西?13. 这个项目想解决的痛点是什么?为什么普通大模型方案不够?14. 这个项目是真实被使用的系统,还是偏学习性质的项目?15. 系统设计题:如果有一个告警系统,里面有 10 万条告警规则,要定时扫描并判断是否触发告警,这个任务怎么设计?16. 规则很多、扫描频率固定时,怎么优化读取和扫描性能?17. 多实例下怎么协同完成规则扫描任务?18. 怎么决定某一条规则该由哪个实例来扫描,且保证不重复、不遗漏?19. 如果实例数会扩缩容,这种规则分配方案要怎么设计?20. 一致性哈希在这种分布式任务分配场景里怎么落地?21. 这个规则扫描任务能不能借助 MQ 来做?如果可以,整体方案怎么设计?22. 如果用 MQ,谁来生产待扫描任务?定时任务、数据库、MQ 三者怎么配合?23. HashMap 底层是怎么实现的?24. JDK 1.7 和 1.8 的 HashMap 有什么区别?25. 数组、链表、红黑树在 HashMap 里是怎么配合工作的?26. HashMap 为什么读写平均复杂度能比较低?27. Hash 冲突是怎么解决的?HashMap 主要采用了什么方式?28. 概率题:有一枚正反面概率不均匀的硬币,怎么公平地决定两个人谁去做一件事?29. 如果只能抛两次硬币,能不能设计一个公平方案?30. 从浏览器输入一个 URL 到页面最终展示,中间经历了哪些过程?31. Redis 为什么快?32. 如果 Redis 内存满了会怎么办?33. 算法题:无重复字符的最长子串。34. 你之前项目里提到过 MCP,你怎么理解 MCP?35. MCP 和 skill 这类能力分别解决什么问题?36. MCP 这种协议的优点和缺点分别是什么?37. MCP 在工具很多的时候,会不会也带来上下文膨胀或者性能问题?38. skill 是什么?为什么会有 skill 这种设计?39. skill 越来越多时,会遇到什么问题?怎么理解上下文过长、成本升高这些问题?40. 你平时是怎么学习 AI 相关内容的?41. 反问
我的求职进度条
点赞 评论 收藏
分享
评论
点赞
13
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务