测试导论
2017-04-14 18:14:30 27 举报
AI智能生成
软件测试导论 软件测试基础和软件过程
作者其他创作
大纲/内容
软件基础
课程目标
软件的生命周期
描述:从项目开始到项目结束
计划
项目经理
项目计划
需求分析
需求分析工程师
需求规格说明书SRS
设计
系统架构师
根据SRS概要设计说明书HLD
编码
码农
根据HLD详细设计说明书LLD
代码
伪代码
模块代码
测试
测试工程师
测试报告
测试用例
根据SRS
测试日报
维护
技术支持工程师
什么是软件测试?
寻找软件缺陷
提升软件质量
明确软件的瓶颈、亮点(业务、功能)和存在问题
测试的目的
证明软件可用
尽早预防bug
分析历史bug和经验寻找
尽早测试
越早发现bug所花的成本越少
寻找bug
测试目的的体现
早期:项目不熟悉、找致命/严重缺陷
中期:项目稳定、测试软件可用确保上线质量
末期:软件质量OK、通过外部测试或者bug寻找遗漏的缺陷
软件测试缺陷是什么?
一切用户体验不佳的因素就是缺陷
功能、体验、易用性、性能等
相关术语
错误
人为主观定义问题
缺陷
软件内部隐藏问题
故障
缺陷有道产生故障
失效
故障不能处理掉导致故障
软件的缺陷类型
遗漏
需求的功能点或者要求没有被实现
错误
需求没有被正确实现
故障
缺陷被激活时可能会引起意外情况导致失效
额外的实现
需求规格说明书未规定的需求被纳入产品,并实现
研发组织结构有哪些?
研发部门
开发部门
需求分析人员
系统架构人员
设计人员
编码人员
测试部门
测试工程师
测试用例设计
测试执行报告
测试开发工程师
测试工具
测试脚本编写
QC
测试技术质量监管
质量部门
项目管理人员
QA
质量保证
测试流程监控
配置管理员
配置库
文档管理
监督
审计
软件测试流程
常见软件测试流程
瀑布模型
顺序流程:从计划到维护
定义阶段
计划->需求分析
设计阶段
设计->编码->测试
维护阶段
运行维护
螺旋模型
加法-减法-乘法-除法:功能开发采用螺旋模型
RUP并行流程
多模块同时进行
IPD
集成产品开发
集成研发
成产
销售
采购
敏捷型开发流程
互联网
迭代很快
经常发布很多版本
工作节奏快
文档概念低
效率快
测试过程
熟悉软件测试的四个阶段和四活动
测试计划
规定测试的人员、时间、内容
根据项目计划和需求规格说明书编写测试计划
项目计划
测试计划和开发计划
测试经理
测试设计
规定的测试的思路和方法
规划和控制测试项目
输出测试方案(根据SRS和测试计划)
高级测试工程师
测试实施
编写测试case
输出测试用例表
根据测试计划、SRS、测试方案
测试工程师
测试执行
搭建测试环境
执行测试用例
编写测试缺陷报告
提交日报
提交测试报告
双V模型
开发
子主题
测试
测试方法
黑盒测试
定义:关注输入和输出是否满足需求的要求,侧重于软件的功能,有没有实现或者遗漏,对于软件的界面。数据库的验证、性能错误和初始化与结束错误
测试方法有:
等价类划分
边界值分析
正交实验分析
判定表法
因果图法
错误推断法
场景法
子主题
优点:
不用调试软件,找出crash并定位原因即可
不用关注功能的代码逻辑和实现方式
比较简单
比较易于实施自动化测试
缺点:
自动化的复用率低
测试用例的代码覆盖率低-30%
白盒测试
优点:
帮助提升软件的代码质量、发现代码中的隐藏问题
缺点
测试开销大
因为代码路径比较多、所以有可能会遗漏功能
无法验证设计是否正确
灰盒测试
软件质量模型(6大特性27个子特性)
功能性
适合性
准确性
互操作性
保密安全性
可靠性
成熟性
容错性
易恢复性
易用性
易理解
易操作
易学性
吸引性
效率性
时间特性
资源利用特性
维护性
易分析性
易改变性
稳定性
易测试性
可移植性
适应性
易安装性
共存性
易替换性
0 条评论
下一页