设计测试策略的关键因素和要点
测试策略是保证产品质量的关键因素之一。本文将从为什么要做测试策略、测试策略的定义、制定测试策略需要考虑的因素、测试范围和质量需求、测试策略的主要内容等几个方面进行介绍。
为什么要做测试策略
制定测试策略是为了选择选择更合适、更有效的测试方式、测试方法和技术等,其目的是为了以最低的时间或人力成本达到最大程度地降低产品的质量风险、尽快完成测试。 虽然有些地方可能没有单独提出测试策略这个概念,但是在测试计划中通常会涉及到测试策略相关的内容,比如测试目标、测试范围、测试方法和技术等。
什么是测试策略
测试策略的核心是回答以下两个问题:
- 测什么:主要从质量需求中得来
- 怎么测:测试流程、测试环境、有哪些基础设施、项目人员构成是什么样的
制定测试策略需要考虑的因素
- 这是一个什么样的项目?是什么全新的项目,还是历史遗留项目?如果是历史遗留项目,那么回归测试以及理解原有功能是非常重要的,也一定会是一个风险项。
- 业务需求明确吗?业务需求还在探讨中吗?还是我们对于要做成什么,项目未来的规划都是非常明确的?这决定了你在测试中,要如何管理测试文档,实施多大范围的自动化测试。
- 用户群体是谁?是企业内部管理人员,还是一个个的消费者?这决定了你对于用户体验和性能的关注度。
- 项目周期有多长?如果是很短的项目,那么自动化测试的范畴就要比较小。
- 有哪些QA资源?如果测试人员资源不足或很少,这决定了整个测试过程如何进行?测试人员主要职责在哪里?
测什么:质量需求
- 功能:业务功能是什么
- 性能:服务端性能、页面性能、基础数据规格
- 兼容性:操作系统兼容性、浏览器兼容性、应用软件兼容性、数据库兼容性
- 安全性:数据传输安全、数据存储安全、异常信息展示安全、日志信息安全
- 易用性:页面展示的引导性、操作的便捷性、返回信息的易理解性
- 可靠性:接口失败重试、页面重复操作禁止
- 稳定性:长时间访问系统。系统在响应时间、资源使用的情况
测试策略 - 怎么测
- 测试流程:确定测试优先级、测试阶段、质量内建
- 测试方式:手工/自动化、探索式/基于脚本
- 测试方法:黑盒测试/白盒测试
测试策略的主要内容
- 测试范围:业务功能、API功能、数据一致性、页面国际化
- 确定测试时间和人力
- 需求的变化性:如果需求变动过于频繁,不建议先做自动化
- 测试重点和难点:需求的核心功能、经常变化的部分、与其他系统相互影响的部分、处理过程比较复杂的部分
- 测试执行过程管理:测试方案、测试计划、测试用例、测试过程、测试结果
- 环境策略:环境类型、环境作用
- 测试重点依赖项:比如下游、需求变化的风险
- 遗留问题记录:是否需要明确的部分、有需要解决但是还未解决的部分、有需要后续更新的部分
一些注意点
- 在每个项目中,一般会有几个测试环境是和整个公司的devops的策略有关的,这里通常不用做太多的发挥。