测试步骤
1、单元测试:完成最小的验证工作,目标是确保模块被正确的编码,通常情况下是白盒的,对代码风格和规则、程序设计和结构、业务逻辑等进行静态测试,及早的发现和解决不易显现的错误。
2、集成测试:通过测试发现与模块接口有关的问题。应当避免一次性的集成,而采用增量集成。
自顶向下集成:首先集成主模块,然后按照控制层次结构向下进行集成,按照深度优先或广度优先的方式集成到整个结构中去。
自底向上集成:模块是自底向上集成的,进行时要求所有隶属于某个给顶层次的模块总是存在的,也不用使用稳定测试桩。
3、系统测试:是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。系统测试的对象不仅仅包括需要测试的软件,还要包含依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。因此,必须将系统中的软件与各种依赖的资源结合起来,在系统实际运行环境下来进行测试。(我认为的最重要的测试步骤)
4、回归测试:回归测试是指在发生修改之后重新测试先前的测试用例以保证修改的正确性。理论上,软件产生新版本,都需要进行回归测试,验证以前发现和修复的错误是否在新软件版本上再次出现。根据修复好了的缺陷再重新进行测试。回归测试的目的在于验证以前出现过但已经修复好的缺陷不再重新出现。一般指对某已知修正的缺陷再次围绕它原来出现时的步骤重新测试。
5、验收测试:它是一项确定产品是否能够满足合同或用户所规定需求的测试。验收测试包括Alpha测试和Beta测试。
Alpha测试:是由用户在开发者的场所来进行的,在一个受控的环境中进行。
Beta测试:由软件的最终用户在一个或多个用户场所来进行的,开发者通常不在现场,用户记录测试中遇到的问题并报告给开发者,开发者对系统进行最后的修改,并开始准备发布最终的软件。
黑盒测试和白盒测试
黑盒测试的方法:
- 等价类划分法:划分为有效等价类和无效等价类
- 边界值分析法:通常边界值分析法是作为对等价类划分法的补充,其测试用例来自等价类的输入或输出的边界。(常见的边界值:报表的第一行和最后一行、数组的第一个和最后一个、循环的第0,1次和循环的倒数1,2次)
- 因果图法:描述系统输入输出之间的因果关系、约束关系
- 场景法;
- 正交实验设计法:正交是从大量的试验点中挑选出适量的、有代表性的点
- 判定表驱动分析法;
- 错误推测法:对于错误操作时对于操作的处理法的猜测法
- 功能图分析法。
白盒测试的方法:
- 静态测试:不用运行程序的测试,包括代码检查、静态结构分析、代码质量度量、文档测试等等
- 动态测试:需要执行代码,通过运行程序找到问题,包括功能确认与接口测试、覆盖率分析、性能分析、内存分析等。
白盒测试的逻辑覆盖:
- 语句覆盖:每条语句至少执行一次
- 判定覆盖:每个判定的每个分支至少执行一次
- 条件覆盖:每个判定的每个条件应取到各种可能的值
- 判定/条件覆盖:同时满足判定覆盖条件覆盖
- 条件组合覆盖:每个判定中各条件的每一种组合至少出现一次
- 路径覆盖:程序中每一条可能的路径至少执行一次
APP测试性能指标
- 内存:不占用过多系统资源,及时释放内存,保障整个系统的稳定性
- CPU
- 流量:网速,弱网等情况
- 电量:安装前后电量变化,待机、连续使用等情况的电量消耗
- 启动时间:首次启动/再次启动/切换软件