软件测试
- 定义
- 在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程
- 软件测试4个阶段
- 单元测试
- 集成测试
- 系统测试
- 验收测试(α\β测试)
- 测试生命周期
- 测试计划
- 测试设计
- 软件分析
- 测试执行
测试分类
- 按程序执行状态
- 静态测试
- 动态测试
- 按算法细节和内部结构
- 白盒测试
- 黑盒测试
- 灰盒测试
- 按执行方式
- 人工测试
- 自动化测试
测试准入/准出标准
- 准入
- 开发自测通过
- 需求开发达到80%以上
- 已达到下个阶段或项目开始时间;
- 准出
- 项目进度达到项目规定的上线时间或下个阶段时间
- 达到测试标准
- 测试未通过,但特批上线
- 停止
- 项目或产品暂停,当前节点锁定,测试停止。
- 项目开发周期内出现重大偏差
测试流程
- 需求分析
- 测试计划----->评审
- 测试方案----->评审
- 测试用例----->评审
- 开发进行自测
- 测试进行冒烟测试
- 测试执行----->提交BUG---->验证开发的修复
- 回归测试
- UAT测试
- 蓝绿/灰度测试
- 测试报告/用户手册/部署手册
- 测试总结(Bug分析/各类优化建议)
测试意义
- 尽可能早的找出系统中的Bug;
- 避免软件开发过程中缺陷的重复出现;
- 衡量软件的品质,保证系统的质量;
- 关注用户的需求,并保证系统符合用户需求。
- 总的目标是:确保软件的质量。