可测试性的内涵和设计

发表于:2009-6-04 13:35

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

  1.可测试性描述了测试信息获取的难易程度

  可测试性包括两方面的含义:一方面,便于对软件的内部状态进行控制,即所谓的可控性;另一方面,能够对软件的内部状态进行观测,即可观测性。实际上,可控性和可观测性所描述的就是对软件进行测试时信息获取的难易程度。传统的“黑箱”功能测试方法的根本缺陷就在于它难以获取有效表征被测对象内部状态的信息。

  2.可测试性是软件本身的一种设计特性

  同可靠性(reliability )一样,可测试性也是软件本身所固有的一种设计特性。软件的可测试性并不是可测试性设计所赋予的,软件一旦设计生产出,本身就具备了一定的可测试性。正如可靠性可以通过MTBF等可靠性指标度量一样,可测试性也可以通过可控性、可观测性指标来度量。要改善软件的可测试性指标,必须在软件设计阶段就进行良好的可测试性设计。

  3.可测试性技术的最终目标是提高软件的质量和可靠性,降低全寿命周期费用

  降低软件的费用,追求软件的高质量是工业界的永恒主题。目前,单纯合格与否的传统质量标准已转变为综合了性能指标、可靠性及可用性(availability)指标要求的“完整质量”概念,而传统的仅考虑软件设计和生产费用的产品费用则被“全寿命周期费用”的概念所替代。全寿命周期费用包括软件整个生命周期中从概念形成到报废处理全过程的费用。

  可测试性技术的应用可以极大地提高软件的“完整质量”,降低其全寿命周期费用。一方面,在软件设计阶段,可以对软件设计原型进行虚拟测试,验证设计方案,排除可能的设计缺陷;在生产阶段,可以对软件进行全面的测试,排除软件的潜在故障,从而降低使用过程中的故障率,提高其质量和可靠性;另一方面,可测试性技术可以缩短软件研制、试验和评价的周期,降低软件的研制费用,提高软件的可用性指标,减少软件的维护和保障费用,从而降低软件的全寿命周期费用。

  第一代可测试设计技术:特定目标可测试性设计

  第一代可测试性设计技术以外部测试和特定目标可测试性设计方法为基础。特定目标可测试性设计是指:针对特定功能和结构进行可测试性预计,判断其是否符合可测试性要求,若不满足,通过改善设计方案来提高其可测试性,直至满足要求。特定目标可测试性设计主要采用外部测试方法,测试向量的输入和测试响应的输出均通过被测设备的输入/输出端口进行操作,对被测对象内部节点的控制和观测则采用以在线(in-line)测试技术。其主要缺点如下:

  (1) 设计同系统的具体功能和结构紧密相关,对较复杂的系统进行设计的难度大、周期长;

  (2) 难以实现并行测试;

  (3) 需要专用测试接口和测试工具,成本高;

  (4) 随着系统的复杂,采用监控测试方法的适用范围日益减小。

  目前,特定目标可测试性设计已逐渐被其他的可测试性技术所代替。尽管如此,对于复杂程度较低的而言,特定目标可测试性设计方法仍然是一种不可或缺的方法。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号