一、软件测试流程
1、搭建测试环境前
1)确定测试目的
功能测试、稳定测试还是性能测试?
功能测试:不需要大量数据,需要覆盖率高,测试数据要真实
性能测试:可能需要大量存量数据或者与实际硬件环境尽可能相似的硬件配置
测试的环境尽可能模拟真实环境
兼容性测试
2)营造独立的测试环境
3)构建可复用的测试环境
2、简单的测试过程
指定测试计划--设计测试用例--执行测试--提交测试发现的问题--修复问题---所有问题已修复--结束
3、测试控制过程
确定测试的资源和技术需求
进行风险分析和评估
根据上述分析结果制定测试计划
根据测试计划开展相应的测试控制活动
4、需求测试
优点:
测试工程师参与需求分析,对需求了解深刻,减少与开发人员的交互,节省时间
早其确定测试用例的编写思路
可以获取一些测试数据,为测试用例设计提供帮助
可以发现需求不合理的地方,降低测试成本
作用:
测试需求的分析用来确定整个测试工作,明确测试对象以及测试工作的范围和作用,并作为测试覆盖的基础
被确定的需求项必须是可核实的,测试需求必须有一个可观察、可评测的结果
无法核实的需求不需要测试
测试需求分析还包括与用户的交流以澄清某些混淆
与客户的交流以澄清某些混淆
明确哪些需求更重要
确保风险承担者尽早对项目达成共识
并对将来的产品有个清晰的认识
测试需求是制定测试计划的基本依据
测试需求是设计测试用例的指导
确定了要测什么、测哪些方面才能有效设计用例
需求验证:
审查需求文档
以需求为依据编写测试用例
确定合格的标准
5、需求说明书检查列表
覆盖了用户提出的所有需求项
用词是否清晰,语义是否存在有歧义的地方
是否清楚的描述了软件需要做什么以及什么不做
是否描述了软件的目标环境,包括软硬件环境
是否对需求项进行了合理的编号
需求项是否前后一致,彼此不冲突
是否清楚地说明了系统的每个输入、输出格式,以及输入和输出之间的对应关系
是否清晰的描述了软件系统的性能要求
需求的优先级是否合理分配
是否描述了各种约束条件
6、测试策略
测试系统是干什么的?
测试系统有什么特点?
系统有什么功能?
哪些部分需要测试?哪些不要测试?
系统对性能有什么要求?
系统对安全性有什么要求?
测试策略:描述测试项目和测试任务之间的关系
测什么?如何测?如何协调测试资源和测试时间?
测试策略要素:
测试安排发布计划 时间
测试范围:按优先级排列 范围内、范围外 ,以便相应测试时间不足的情况
测试资源:人力 工具
测试环境:推荐环境解决方案、操作系统要求、软硬件
测试方法:功能测试 非功能测试
用例设计方法
文档管理
风险管理
上线跟踪验证
测试策略:侧重需求分析、评估风险、定义测试范围
确定测试方法,制定测试启动、停止、完成标准和条件
测试计划:制定项目测试过程中的测试重点
各个阶段的任务分配以及时间进度安排
可以包括测试策略
测试方案:侧重测试的方法,测试环境的规划
测试工具的设计和选择,测试用例的设计方法,测试代码的设计方案
测试方案=测试计划+用例设计方案+工具选择+自动化/性能测试具体方案