软件测试技术

软件测试与可靠性评估方法研究(三)

六、软件的缺陷和失效

  缺陷(defect/fault)是指软件的内在缺陷。在软件生命周期的各个阶段,特别是在早期设计和编码阶段,设计者和编程人员的行动(如需求不完整、理解有歧义、没有完全实现需求或潜在需求、算法逻辑错、编程问题等)会使软件在一定条件下不能或将不能完成规定功能,这样就不可避免地存在“缺陷”。

  软件一旦有缺陷,它将潜伏在软件中,直到它被发现和正确修改。反之,在一定的环境下,软件一旦运行正确,它将继续保持这种正确性,除非环境发生变化。此外,软件中的缺陷不会为因使用而“损耗”。所以缺陷是“无损耗”地潜伏在软件中。

  如果软件在运行时没有用到有缺陷的部分,软件就可以正常运行且正确工作;若用到了有缺陷的部分,则软件的计算或判断就会与规定的不符从而使软件丧失执行要求的功能的能力。软件不能完成规定功能即“失效”(failure)或“故障”。对于无容错设计的软件而言,局部失效则整个软件失效。对于采取容错设计的软件,局部故障或失效并不一定导致整个软件失效。

  判断软件是否失效的判据有:系统死机、系统无法启动、不能输入输出显示记录、计算数据有误、决策不合理以及其它削弱或使软件功能丧失的事件或状态。

七、软件的可靠性测试过程

  完整的测试过程包括测试前的检查、设计测试用例、测试实施、可靠性数据收集和编写测试报告5个步骤,下面逐一对这5个步骤进行说明。

  1.测试前的检查

  在进行应用软件的可靠性测试前有必要检查软件需求与研制任务书是否一致,检查所交付程序和数据以及相应的软件支持环境是否符合要求,检查文档与程序的一致性,检查软件研制过程中形成的文档是否齐全、文档的准确性和完整性以及是否通过了有关评审。

  根据软件行业的有关标准,我们知道,软件研制过程中形成的文档共有十六种:《系统和段设计文件》、《软件开发计划》、《软件需求规格说明》、《接口需求规格说明》、《接口设计文档》、《软件设计文档》、《软件产品规格说明》、《版本说明文档》、《软件测试计划》、《软件测试说明》、《软件测试报告》、《计算机系统操作员手册》、《软件用户手册》、《软件程序员手册》、《固件保障手册》、《计算机资源综合保障手册》。

  应该注意:这里的《软件测试计划》、《软件测试说明》和《软件测试报告》是指研制方在研制过程中进行测试所形成的测试文档。原则上若软件规模不太大,某些文档可以合并。

  这些检查虽然增加了工作量,但对于在测试早期发现错误和提高软件的质量是非常必要的。

  2.设计测试用例

  设计测试用例就是针对特定功能或组合功能设计测试方案,并编写成文档。测试用例的选择既要有一般情况,也应有极限情况以及最大和最小的边界值情况。因为测试的目的是暴露应用软件中隐藏的缺陷,所以在设计选取测试用例和数据时要考虑那些易于发现缺陷的测试用例和数据,结合复杂的运行环境,在所有可能的输入条件和输出条件中确定测试数据,来检查应用软件是否都能产生正确的输出。

相关内容

文章评论

表情

共 0 条评论,查看全部
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~