一.什么是测试策略
简单来说就是,测什么,怎么测。
一般可以归纳为6个问题
1)测试的对象和范围是什么?
2)测试的目标是什么?
3)测试的深度到哪里,广度又到哪里?
4)测试的重点有什么?难点又有什么?
5)如何安排测试活动
6)如何评价,评审测试是否有效?
二.什么是测试方针
测试方针可以理解为测试活动中的一些通用的要求,原则。
如:1)产品的缺陷修复率要达到90%以上才能发布。
2)开发提交版本前,必须要先自测,比产出测试报告。
3)对发布的版本,无论代码修改了多少,都要对基本功能进行回归测试。
4)产品升级后,发型原有功能丢失或失效的,这类缺陷都定义为严重。
三.什么是测试计划
可以这样理解:通过测试策略确定的测试活动,而这些测试活动都在测试计划中被拆分为一个个任务。并且每个任务都确定工期,执行的先后顺序和责任人。
如图所示
测试策略 测试计划 测试资源
测试计划实例
任务名称 | 责任人 | 任务起止时间 | 优先级 |
测试任务1 |
张三 | 2018/8/5至2018/8/7 | 高 |
测试任务2 |
李四 | 2018/8/8至2018/8/10 | 中 |
测试任务3 |
王五 | 2018/8/11至2018/8/13 | 低 |
四.什么是测试方案
测试方案主要是解决功能特性在测试执行方面的问题。
要注意,测试策略要解决的是软件测试中的六大问题(一.测试策略中有说到),而这里测试方案则是解决对功能特性如何进行测试,以及如何安排这种测试的执行。
具体包括:
1)对功能特性的需求,场景,设计进行分析,提取出测试点
2)对测试点选择合适的测试设计方法(如,等价类设计法,边界值设计法,场景流法,错误探测法,如何选择测试数据)
3)是否需要进行性能测试或自动化测试,若有,则进行相关的设计,如提取性能需求,部署环境等等。
4)测试执行时需要按照怎么的顺序来执行这些用例。
举例如下:
1.测试方案模板(以一个功能特性为单位):
1.xxx特性的场景
a)用户场景描述:
描述用户会如何使用这个功能特性。
b)测试场景描述:
描述测试时会怎么模拟用户的使用,模拟和实际差别在哪里,是否会有风险。等等。
2.xxx特性设计分析:
a)产品实现中的关键业务流程。
b)重要的算法(或实现技术)的分析
c)其他需要主要的内容分析。
3.xxx特性测试分析:
a)测试类型分析
b)功能交换分析。
4.xxx特性测试设计:
对测试点选择合适的测试设计方法,并得出测试用例
为测试用例划分优先级
5.xxx特性测试执行:
那些用例需要进行手工测试。
那些用例需要进行自动化测试。
那些用例需要进行性能测试。
测试用例是否需要考虑执行的顺序。
是否还有些地方可以进行探索测试。
2.测试方案需要遵循的测试策略
例如,该测试方案中的某些特性 需要遵循 测试策略中的测试深度和广度的要求。
特性 | 测试优先级(测试重点) | 测试说明(测试深度和广度) |
特性A | 高 |
1.需要进行全面,深入的功能测试 2.需要考虑各种测试类型,尤其是可靠性方面的测试 |
特性B | 低 | 只需要进行基本功能验证测试即可 |
软件测试与产品的六大特性
产品 | 可靠性 | 可靠性测试 | 异常值测试 |
故障植入测试 | |||
稳定性测试 | |||
恢复测试 | |||
功能性 | 功能测试 | 运行正确值输入 | |
运行边界值输入 | |||
等价类测试法 | |||
场景测试 | |||
效率 | 性能测试 | 压力测试 | |
负载测试 | |||
对指定的性能指标进行测试 | |||
可维护性 | 可维护性测试 | 检查产品是否可维护 | |
升级测试,更新测试 | |||
下载链接测试,是否下载到最新版本 | |||
兼容性 | 兼容性测试 |
平台测试 (检查产品是否能在各个平台运行,如app测试中,能运行在什么类型的手机) |
|
操作系统适应性测试,检查产品能运行在什么操作系统上 | |||
易用性 | 易用性测试 | 产品是否提供教程 | |
产品中的功能控件是否简洁易用,不复杂 | |||
产品中的下拉弹出窗口最多三层,如txt记事本,里面有一个【文件】按钮,点击 后会弹出第一层下拉窗口,然后在点击其中的【另存为】就会弹出第二层窗口,选 择地址,点击保存后就存储成功。整个操作最多展开了两层。 |
对于特性A,因为要进行全面测试,那我们需要覆盖六大特性中的所有内容
对于特性B,因为只需要基本功能验证,所以我们可以选择功能测试中的内容。