测试的定义
尽可能去发现产品的缺陷,使产品的质量达到一定的标准。
测试的分类
- 按测试过程分:单元测试、集成测试、系统测试、验收测试。
- 按方法分:黑、白、灰盒测试。
黑盒测试:在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,主要针对软件界面和功能进行测试。
方法:等价划分法、边界值、错误推测、因果图
白盒测试:检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试。
逻辑覆盖包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖
- 根据软件主要侧重:性能测试、功能测试、兼容测试、压力测试、负载测试、验收测试。
测试的生命周期
1)需求分析:阅读需求,理解需求,主要就是对业务的学习,分析需求点,参与需求评审会议。
2)测试计划:主要任务是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围,进度的安排,人力物力的分配,整体测试策略的制定,和风险的评估与规避措施有一个制定。
3)测试设计:主要任务是编写测试用例,会参考需求文档(原型图),概要设计,详细设计等文档,有不明确的也会及时和开发,产品经理沟通,用例编写完成后会进行用例评审。
4)测试执行:首先搭建测试环境,执行预测(冒烟测试),以判定当前版本可测与否,如果预测通过,正式进入系统测试,遇到问题提交bug到缺陷管理平台,并对bug进行跟踪,直到被测软件达到测试需求要求,没有重大bug,测试结束----(完善测试用例)
5)测试评估:编写测试报告,对整个测试的过程和版本质量做一个详细的评估,确认是否可以上线。
工作流程
测试人员:需求分析-- 编写测试用例 --评审测试用例 -- 搭建测试环境 -- 等待开发研发完成 -- 执行测试用例 -- bug跟踪处理(提交及回归bug)--N轮测试 -- 版本上线
开发人员:需求分析 -- 得知功能组成及设计软件结构、数据结构(概要设计、详细设计)-- 编写代码单元测试 -- 代码审查 -- 打包提交测试部 -- 等待测试提交bug -- 修复bug -- 等待测试回归bug -- N轮-版本上线