内容简介:现在app的开发已经是火爆的一个开发趋势,手机应用的测试也显得格外的重要,现在大部分还是停留在手动测试的状态。我们知道手机app开发,要适应不同的设备,比如一个Android app要适应不同的版本,不仅是要支持最新的版本,旧的版本也需要支持,这也就导致了手动测试需要购买N部android手机来手动测试,如何应对繁琐的手机测试呢?当然是使手机测试自动化。经常有新手或者经验尚浅的朋友在后台给我留言:手机App功能测试用什么自动化工具啊?这些多测试工具到底用于什么测试啊?针对APP测试如何选择自动化测试工具这
现在app的开发已经是火爆的一个开发趋势,手机应用的测试也显得格外的重要,现在大部分还是停留在手动测试的状态。我们知道手机app开发,要适应不同的设备,比如一个Android app要适应不同的版本,不仅是要支持最新的版本,旧的版本也需要支持,这也就导致了手动测试需要购买N部android手机来手动测试,如何应对繁琐的手机测试呢?当然是使手机测试自动化。
经常有新手或者经验尚浅的朋友在后台给我留言:手机App功能测试用什么自动化 工具 啊?这些多测试工具到底用于什么测试啊?针对APP测试如何选择自动化测试工具这个问题,今天我来个大家做一个汇总。
功能测试
功能测试最开始最基础的就是分析需求编写测试用例,测试是把握质量的守关人,保证不漏测的第一步就是要编写尽可能全面的测试用例。基础打牢后多实践。测试是讲究经验的职业,从简单需求开始,制定测试计划,编写用例执行,执行过程及时调整计划爆出风险和进度给团队知道非常重要。而且现在是自动化的时代,你可以学习使用一些自动化测试工具来进行功能自动化测试。
自动化工具 a) 轻量接口自动化测试 jmeterb) APP UI层面的自动化 android:UI Automator Viewer,Android Junit,Instrumentation,UIAutomator, iOS:基于Instrument的iOS UI自动化
测试方法
根据软件说明或用户需求验证App的各个功能实现,采用如下方法实现并评估功能测试过程:
1)采用时间、地点、对象、行为和背景五元素或业务分析等方法分析、提炼App的用户使用场景,对比说明或需求,整理出内在、外在及非功能直接相关的需求,构建测试点,并明确测试标准。
2)根据被测功能点的特性列出相应类型的测试用例对其进行覆盖,如:设计输入的地方需要考虑等价、边界、负面、异常、非法、场景回滚、关联测试等测试类型对其进行覆盖。
3)在测试实现的各个阶段跟踪测试实现与需求输入的覆盖情况,及时修正业务或需求理解错误。
性能测试
自动化工具 a) Web前端性能测试 网络抓包工具:Wireshark 网页文件大小 webpagetest pagespeed insight chrome adb b) APP端性能测试 Android内存占用分析:MAT iOS内存问题分析:ARC模式 Android WebView性能分析: iOS WebView性能分析 c) 后台服务性能测试 负载,压力,耐久性 可拓展性,基准 工具:apacheAB,Jmeter,LoadRunner
测试方法:
1)响应能力测试:测试App中的各类操作是否满足用户响应时间要求。
App安装、卸载的响应时间
App各类功能性操作的响应时间
2)压力测试,反复/长期操作下,系统资源是否占用异常。
App反复进行安装卸载,检查系统资源是否正常
其他功能反复进行操作,检查系统资源是否正常
专项测试
APP启动快不快?跑起来是不是常常Crash?是否有卡顿?这些问题可以靠专项测试来解决。专项测试包括CPU、内存、帧率、流量、电量等;这块有很多工具和方法,如果能做好专项测试,那在业界是很受欢迎的。在大公司,如果APP有一个大的版本要发布,通常是需要做全面的专项测试的。a) 兼容性测试 手工测试:操作系统,分辨率,rom,网络类型 云平台:testin,脚本编写,Android。
测试方法
主要测试内部和外部兼容性
1)与本地及主流App是否兼容
2)与各种设备是否兼容,若有跨系统支持则需要检验是否在个系统下,各种行为是否一致。
不同手机屏幕分标率的兼容性
不同手机品牌的兼容性b) 流量测试 Android自带的流量管理, iOS自带的Network
tcpdump抓包 WiFi代理抓包:Fiddler 流量节省方法:压缩数据,json优于xml;WebP优于传统的JPG,PNG;控制访问的频次;只获取必要的数据;缓存; c) 电量测试 基于测试设备的方法,购买电量表进行测试。 GSam Battery Monitoe Pro iOS基于Instrument Energy工具
d) 弱网络测试 手机自带的网络状况模拟工具 基于代理的弱网络的模拟: 工具:windows:Network Delay Simulator Mac:Network Link Conditioner
实地测试
e) 稳定性测试 Android:Monkey 模糊测试 f) 安全测试 安装包:反编译,签名,完整性校验,权限。 敏感信息测试: 键盘劫持 账户安全 数据加密 组件安全测试 服务端接口测试:SQL注入,XSS跨站脚本攻击,CSRF跨站请求伪造,越权访问。 g) 环境相关的测试 干扰测试 权限测试 边界情况 定位测试
辅助测试方法 a) 代码静态扫描 Android工具:FindBugs,Lint, iOS工具:Analyze b) 代码覆盖率测试 现有框架:emma,jacoco c) 接口Mock方法 接口异常模拟 d) AOP测试方法 AspectJ Aspects
总结:
由于移动互联网的应用太多,更新频繁,无论如何不是个人经验所能覆盖完全的。以上几点,仅从我测试过的APP进行总结,仅为APP应用测试新人提供思考方向。希望看完本文,您对于移动应用的测试多了一些了解。
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 接口测试及常用接口测试工具
- VPS 常用测试方法和测试工具整理总结
- 说说分层测试中HTTP的API测试工具
- API 测试工具 Hitchhiker 0.6 发布,改进压力测试
- API 集成测试工具 Hitchhiker 0.2 发布: 新增压力测试
- 接口测试工具 Hitchhiker v0.9 基于 UI 的断言测试
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。