测试理论-目录
1.外部质量模型
功能、效率、易用、可靠、可移植性,内部质量,可维护性
功能:适合性、保密安全性、互操作性、准确性
可靠:成熟、容错、易恢复
易用:易理解、易操作、易学习、吸引性
效率:时间、资源
可维护:易分析、易改变、易测试、稳定
可移植:共存、适应、易安装、易替换
2.瀑布型软件生命周期
计划-需求-设计-编码-测试-维护;
计划:项目经理,3w,when,who,what ,费用。
需求:SRS,需求文档,需求规格说明书,需求分析人员,需求分析师,产品经理(产品工程师,产品人员),产品驱动开发。
设计:系统架构师,技术牛人。概要设计(HLD),详细设计(LLD)
编码:开发写代码
测试:测试工程师(计划、设计、实现、执行)
运维:技术支持,实施,售后
3.测试的含义
找bug、提升软件质量、验证软件的正确性
4.测试方法
动态测试、静态测试,人工、自动化,黑白灰
5.测试四个活动
计划、设计、实现、执行
6.测试阶段
单元测试:验证代码是否实现了LLD,测试软件组成的最小单元(函数)
集成测试:验证代码是否实现了HLD,测试软件的模块、接口
系统测试:验证代码是否实现了SRS,测试软件的整体特性
验收测试:验证软件是否满足用户需求
α测试、β 测试、正式验收测试
α测试:开发环境下进行
β测试:客户环境,客户试用,开发人员不能控制
正式验收测试:客户进行
回归测试:验证Bug是否被正确修复的过程
每个阶段都有回归测试
选择性回归 验证Bug被修复、验证未引入新Bug、重点功能、主线业务流程
系统测试的重点:功能,依据是SRS(需求人员)
集成测试的重点:接口,依据是HLD(架构人员)
单元测试的重点:函数,依据是LLD(开发人员)
7.系统测试类型
功能测试、性能测试、界面测试、安装测试、卸载测试、配置测试、安全测试、兼容性测试、异常测试
测试顺序:界面测试、功能测试、性能、安全、兼容/配置、用户体验、安装卸载、异常
8.测试活动
计划:测试经理确认当前版本的工作范围、时间安排、人员分工、风险预估、工作规范,输出《测试计划》
设计:高级测试工程师 根据需求和测试计划 从技术角度规划当前版本的测试工作如何实现,测试关注点、测试方法、测试用例设计、环境安排等,输出《测试方案》
实现:测试工程师根据需求、计划、方案,把需求转化为一个可执行的文档《测试用例》
执行:搭建测试环境(操作系统、网络、数据库等技术)
冒烟测试:验证软件最基础的功能,确认当前版本的需求基本实现,保证测试用例可以正常执行
执行测试用例:按照测试用例中的操作步骤操作软件,对比软件的实际结果和用例的预期结果,不一致则有可能会是Bug
提交和跟踪Bug:测试人员发现Bug,开发修复Bug,测试人员验证。期间需要测试协助开发了解和定位Bug
9.测试用例的组成
测试标题:要测试的内容,简洁明确,最好不要重复
测试项目:测试的模块
重要级别:高中低,测试规程
预置条件:执行该测试用例之前的准备工作,例如登录就必须要存在账号
测试输入:用例在执行时,需要输入的内容,相同操作步骤不同的测试输入会有不同的预期结果
操作步骤:描述执行测试时在软件上的操作
预期结果:对软件的正确结果进行预期,如果执行时的实际结果与预期结果不同,则有可能是Bug。
10.缺陷管理
测试提交、经理确认、开发修改、测试验证
4个级别:致命、严重、一般、轻微
7个状态:New-open-fixed(postpone,reject)-closed(reopen)
出现频率:总是、通常、偶现、很少
发现bug时要立即提交
11.需求管理
需求研发:需求分配、需求收集、需求分析、需求设计、需求验证。
需求实现:需求评审、开发/测试 需求分析、需求实现、测试、验收
需求开发:需求获取、需求分析、需求定义、需求验证
需求管理:需求分配、需求评审、需求基线、需求跟踪、变更控制
12.需求评审
需求分析人员-开发经理(产品经理、测试经理)-专家(开发人员、测试人员、QA、其他相关人员)
1、需求规格说明书 2、选取评审专家 ,提交评审文档(需求规格说明书、评审表单、评审checklist) 3、评审介绍会议(选择性召开) 4、专家评审,反馈评审表单 5、汇总评审表单召开评审会议 6、 需求评审结果分析(可选,第三小时会议)7、修改需求规格 8、确认修改是否正确 9、基线、对外发布需求规格说明书
13.需求跟踪
用需求跟踪矩阵:原始需求,测试项,测试子项,用例,测试人员,结果
14.测试流程
1.需求分析–>需求评审.
2.测试经理输出测试计划.
3.高级测试工程师输出测试方案.
4.测试工程师输出测试用例.
5.搭建测试环境,执行测试用例,提交BUG,个人日报.
6.回归测试确定BUG解决.
7.个人输出测试总结,测试经理输出测试报告.
15.需求管理
需求研发:需求分配、需求收集、需求分析、需求设计、需求验证。
需求实现:需求评审、开发/测试 需求分析、需求实现、测试、验收
需求开发:需求获取、需求分析、需求定义、需求验证
需求管理:需求分配、需求评审、需求基线、需求跟踪、变更控制
16.需求评审
需求分析人员-开发经理(产品经理、测试经理)-专家(开发人员、测试人员、QA、其他相关人员)
17.需求跟踪
用需求跟踪矩阵:原始需求,测试项,测试子项,用例,测试人员,结果