软件缺陷与软件质量

测试人员的必备素质

什么是缺陷?
与设计要求不符
与用户确定的需求不符

产生缺陷的原因
人员缺乏沟通
文档不完善
需求经常变更
参与人员过度自信
软件设计本身有缺陷
软件复杂性
开发工具或者系统软硬件本身存在缺陷。
工期短,任务重,压力大。

判断发现的问题是否是缺陷的方法
根据参考文档
通过了解软件开发产品的行业背景
通过沟通来确认和识别

怎样有效记录缺陷
保证重现缺陷
分析故障——使用最少步骤复现故障
包含所有重现缺陷的必要步骤
方便阅读
尽量简单——一个缺陷一个报告
注意自己的语气
报告不能重现的缺陷。
不能夸大缺陷。
小缺陷(甚至建议)也要报告。
引用别人的报告时,不能修改,可以添加批注之类的补充评论。
缺陷报告的用途
记录缺陷
缺陷分类
跟踪缺陷

从哪些角度进行缺陷分类
从问题引出不同
按功能(模块)
按缺陷的严重程度
按修复缺陷的优先级
按缺陷所处状态分类
按处理意见分类

关于处理缺陷
注意缺陷报告的处理成本
修改缺陷要量力而行
关注被推迟修改的缺陷
如果决定据理力争就一定要赢

软件质量特性
1.功能性:软件在指定条件下使用时,满足用户明确和隐含需求的功能的能力 。
• 适合性:软件是否提供了相应的功能
• 准确性:软件提供的功能是否正确(用户需要的)
• 互操作性:产品与产品之间交互数据的能力,例如word对其他文档的支持能力 • 安全性:允许经过授权的用户和系统能够正常的访问相应的数据和信息,禁止未授权的用户 访问等
• 功能性的依从性:软件遵循与功能性相关的标准、约定或法规以及类似规定的能力。这些标 准要考虑国际标准、国家标准、行业标准、企业内部规范等
2.可靠性:软件在指定条件下使用时,维持规定的性能级别的能力。平均故障修复时间 (mean time to repair,MTTR)、平均无故障时间(mean time between failures, MTBF)
• 成熟性:软件产品为避免软件内部的错误扩散而导至系统失效的能力(主要是对内错误的隔 离),异常等的处理
• 容错性:软件防止外部接口错误扩散而导致系统失效的能力(主要是对外错误的隔离)
• 易恢复性:系统失效后,重新恢复原有的功能和性能的能力。
• 可靠性的依从性:软件遵循与可靠性相关的标准、约定或法规的能力。
3.易用性:在指定使用条件下,产品被理解、 学习、使用和吸引用户的能力
• 易理解性:软件交互给用户的信息时,要清晰,准确,且要易懂,使用户能够快速理解软件。
• 易学性:软件使用户能学习其应用的能力。
• 易操作性:软件产品使用户能易于操作和控制它的能力。
• 吸引性:软件吸引用户的能力
• 易用性的依从性:软件遵循与易用性相关的标准、约定、风格指南或法规的能力
4.效率性:在规定条件下,相对于所用资源的数量,软件产品可提供适当性能的能力 • 时间特性:在规定条件下,软件执行其功能时,提供适当的响应和处理时间以及吞吐率的能 力,即完成用户的某个功能需要的响应时间
• 资源利用性:在规定条件下,软件执行其功能时,使用合适的资源数量和类别的能力。如: CPU、内存、磁盘、IO、网络带宽等
• 效率依从性:软件遵循与效率相关的标准或约定的能力
5.可维护性:软件可被修改的能力。修改可能包括修正、改进或软件对环境、需求和功能 规格说明变化的适应
• 易分析性:软件诊断软件中的缺陷、失效原因或识别待修改部分的能力
• 易改变性:软件产品使指定的修改可以被实现的能力
• 稳定性:软件避免由于软件修改而造成意外结果的能力
• 易测试性:使已修改软件能被确认的能力
• 维护性的依从性:软件遵循与维护性相关的标准或约定的能力
6.可移植性:软件从一种环境迁移到另一种环境的能力
• 适应性:适应不同平台 • 易安装性:在指定环境中被安装的能力
• 共存性:软件在公共环境中同与其分享公共资源的其他独立软件共存的能力
• 易替换性: 软件产品在同样的环境下,替代另一个相同用途的软件产品的能力
• 可移植性的依从性:软件遵循与可移植性相关的标准或约定的能力

你可能感兴趣的:(笔记,软件测试)