admin 管理员组

文章数量: 887007

软件测试与质量保证的区别

1

为什么测试?

软件系统无处不在

  • 网上购物

  • 银行系统

  • 手机

  • 卫星通信系统

  • 汽车系统

软件系统成为我们生活中不可或缺的一部分,那么因缺陷造成的各种后果也无处不在。

2

为什么会存在缺陷?

人的因素:

  • 人总是容易犯错误的

  • 开发人员的态度

  • 开发人员的经验和技术不足

  • 沟通的问题

  • 需求变更频繁

  • 管理上的缺失

  • 进度压力大

其他因素:

  • 周围环境的影响:电磁辐射等

  • 使用环境的影响:硬件系统的老化等

  • 软件系统越来越复杂

缺陷相关术语

错误

  • 与错误相关的英语表示ERROR、ERRORNEOUS、MISTAKE等等;

  • 定义:人为的生产不正确结果的行为【与IEEE610一致】;

  • 人为的原因导致一个不正确的结果。它可以是程序内部的错误,也可能是文档内的错误;

故障/缺陷

  • 与故障/缺陷相关的英语表示为FAULT、DEFFC、BUG等等;

  • 定义:可能会导致软件组件或系统无法执行其定义的功能的瑕疵,例如:错误的语句或者变量定义;

失效/失败

  • 与失效/失败相关的英语表示为FAILURE等等;

  • 定义:组件/系统与预期的交付、服务或结果存在变差【与Fenton一致】;

程序人员犯了一个“错”,那么错误在程序或软件中就表现为缺陷,运行带有缺陷的软件或者程序,就可能观察到失效/失败

3

软件测试的角色

软件测试的角色必不可少:

  • 软件测试是软件质量保证的一个重要环节;

  • 软件测试可以降低软件系统在运行环节中的使用风险;

  • 软件或者产品通过软件测试发现其中的缺陷,对缺陷修改可以提高软件质量;

  • 软件测试也可以为了满足合同或者法律法规的要求,或者满足行业的标准;

  • 软件测试可以为项目相关干系人提供信息,帮助他们作出合理的决定;

  • 软件测试得到的数据和度量,可以帮助进行测试过程和开发过程的改进;

  • 假如测试过程中没有发现或者发现很少的缺陷,可以提高软件系统的信心;

4

软件测试和质量保证

不用意义:

  • 软件测试:寻找缺陷的策略,关注工作产品;

  • 质量保证:预防缺陷的策略,关注过程的管理和控制;

不用目标:

质量保证

  • 通过监控软件开发过程来保证产品质量;

  • 保证软件和开发过程符合相应标准与规范;

  • 保证软件产品、软件过程中存在的问题得到处理,同时满足评审和审计需要;

软件测试:

  • 尽早、尽可能多地发现软件系统中存在的缺陷及问题; 

不同的工作内容:

质量保证:

  • 建立质量保证活动实体

  • 制定质量保证计划

  • 坚持各阶段的评审和审计,跟踪结果,并作相应处理;

  • 监控软件产品质量

  • 采集质量保证活动数据

  • 度量质量保证活动

软件测试:

  • 编写测试计划

  • 评审开发工作产品

  • 编写和执行测试用例

  • 测试结果分析和总结

  • 测试数据收集和度量

本文标签: 软件测试与质量保证的区别