Android测试基础
前半部分是从一个团队的角度讲的,后半部分是从一个屌丝测试的个人角度讲的。
一、基本测试流程介绍
1,weeklybuild模式流程
weeklyBuild的目的:
对于项目组而言,使原来的单线开发模式演变成并行开发,降低开发和发布的成本。从测试的角度来说,能够有效降低测试的回归开销,清楚了解自己要测试什么(减少躺枪几率= =),有效控制项目的进度和分配测试资源。weeklybuild时要有明确的各个时间节点,具体到每一天,每一个人。
2,项目流程
下图为常见的项目模式测试流程
3,验收测试流程
下图为常见的验收测试基本流程
测试不是要到开发完成之后才开始的,从项目立项的评审就开始了。越早提出bug或不足,改进成本越低。牛逼的测试相当于测试团队的大脑和安全顾问。(有点像足球里面的中后卫,牛逼点的,像贝肯鲍尔和卡纳瓦罗,他们的任务绝不是对方把球带到前场再把球断掉)扯淡完毕。。
二、基本测试工作介绍
1,提测前准备工作
a,PRD评审b,交互评审c,视觉评审d,UC评审e,TC编写f,TC评审
2,接口测试
a,接口功能测试b,接口性能测试
3,客户端功能测试
a,冒烟测试
冒烟测试用例通常会以TC形式明确写出,为一个模块中最重要流程,由开放自测完成,如果出现bug,均为P1级bug(很严重的bug),不予提测。
b,基本功能测试
1)正常功能是否能够执行完成2)网络异常情况\接口返回异常数据3)多线程加载正常4)图片动画效果展示5)UI展示\尺寸展示6)数据缓存和I/O展示
4,客户端适配测试(这里就是在学校扯淡最多的适配了)
5,客户端集成测试
按照大顺哥课上讲的理解就是啦。就是对单元测试的逻辑扩展。把若干个已经测试过的单元组合成一个组件,测试它们之间的接口,发现组合单元时出现的问题。
6,客户端性能测试
a,稳定性测试
就是要保证app长时间大量人数运行,客户端、服务器、数据库不会出现大的问题。稳定性测试是概率性的测试,就是说即使稳定性测试通过,也不能保证系统实际运行的时候不出问题。稳定性测试的测试时间和压力存在一定的关系。虽然不能完全保证,但是通过观察系统的各种监控指标曲线,预测系统的发展状况,响应时间是否有增长,可用内存是否在减少,CPU利用率是否在上升等等都可以说明系统是否存在问题。
b,其他性能参数获取
1)页面启动时间2)页面加载时间3)内存占用4)静默网络流量5)静默电量6)静默CPU占用
7,客户端回归测试
就是修改了旧代码之后,重新确认修改没有引入新的错误或导致其他代码产生错误。在这里,自动回归测试将大幅降低系统测试、维护升级等阶段的成本。但是,为了安全起见,再检查一遍代码是最可靠的办法。
8,发布抽查
9,数据埋点的测试
10,自动化的测试
11,客户端验收测试