《软件可测试性介绍》-课件.pptVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 软件可测试性介绍 2008年9月5日 可测试性定义 软件的可测试性是指在一定的时间和成本前提下,进行测试设计、测试执行以此来发现软件的问题,以及发现故障并隔离、定位其故障的能力特性。简单的说,软件的可测试性就是一个计算机程序能够被测试的容易程度。 ??? 一般来说可测试性很好的软件必然是一个强内聚、弱耦合、接口明确、意图明晰的软件,而不具可测试性的软件往往具有过强的耦合和混乱的逻辑。 可测试性特征 1、可操作性 2、可观察性 3、可控制性 4、可分解性 5、简单性 6、稳定性 7、易理解性 可测试性特征-可操作性 1、可操作性:运行得越好,被测试的效率越高。 1)系统的错误很少; 2)没有阻碍测试执行的错误; 3)产品在功能阶段的演化(允许同时的开发和测试)。 可测试性特征-可观察性 2、可观察性:你所看见的就是你所测试的。 1)每个输入有唯一的输出; ??? 2)系统状态和变量可见,或在运行中可查询; ??? 3)过去的系统状态和变量可见,或在运行中可查询(例如:事务日志); ??? 4)所有影响输出的因素都可见; ??? 5)容易识别错误输出; ??? 6)通过自测机制自动侦测内部错误; ??? 7)自动报告内部错误; ??? 8)可获取源代码。 可测试性特征-可控制性 3、可控制性:对软件的控制越好,测试越能够被自动执行与优化。 1)所有可能的输出都产生于某种输入组合; ??? 2)通过某种输入组合,所有的代码都可能被执行; ??? 3)测试工程师可直接控制软件和硬件的状态及变量; ??? 4)输入和输出格式保持一致且有结构; ??? 5)能够便利地对测试进行说明、自动化和再生; ??? 6)接口和模块易控制; ??? 7)业务流程和场景易控制。 可测试性特征-可分解性 4、可分解性:通过控制测试范围,能够更快地分解问题,执行更灵巧的再测试。 1)软件系统由独立模块构成; ??? 2)能够独立测试各软件模块; ??? 3)业务流程和场景易分解。 可测试性特征-简单性 5、简单性:需要测试的内容越少,测试的速度越快。 1)功能简单性(例如:特性集是满足需求所需的最小集合); ??? 2)结构简单性(例如:将体系结构模块化以限制错误的繁殖); ??? 3)代码简单性(例如:采用代码标准为检查和维护提供方便)。 可测试性特征-稳定性 6、稳定性:改变越少,对测试的破坏越小。 1)软件的变化是不经常的; ??? 2)软件的变化是可控制的; ??? 3)软件的变化不影响已有的测试; ??? 4)软件失效后能得到良好恢复和隔离。 可测试性特征-易理解性 7、易理解性:得到的信息越多,进行的测试越灵巧。 1)设计能够被很好地理解并遵循行业规范; ??? 2)内部、外部和共享构件之间的依赖性能够被很好地理解; ??? 3)设计的改变被通知; ??? 4)可随时获取技术文档; ??? 5)技术文档组织合理; ??? 6)技术文档明确详细; ??? 7)技术文档精确性稳定; ??? 8)相关环境配置说明与操作指导。 软件可测试性设计 软件的可测试性特征主要表现是设立观察点、控制点、观察装置、驱动装置、隔离装置。需要注意的是可测试性设计时必须要保证不能对软件系统的任何功能有影响,不能产生附加的活动或者附加的测试,采取合适的设计模式对软件进行设计。 软件可测试性设计方法 1、坚持测试驱动设计(测试先行)的方法 优先编写测试代码,这是标准的XP方法。不是说应该一次性编写全部测试代码后,再一次性全部实现。先写验收测试,再写单元测试,编写一些测试代码,实现它们,再编写一些测试代码,再实现它们等等是个更好的办法。设计以这种方式得以进展;在实现阶段捕捉错误并在下一组测试中改正它,以这种方式编写测试也更少会使人畏缩。 软件可测试性设计方法(续) 2、尽量做到每个操作对应一个函数,使函数小型化 使用小型函数说明和重载带缺省参数的函数将使在测试中调用这些函数变的愉快的多。否则,在测试这些函数时将不得不构造额外参数,如果参数很大,那么将很快导致代码膨胀。更糟的是,它会诱使你编写比在其它情况下更少的测试。 软件可测试性设计方法(续) 3、数据的显示与控制分离 把代码移到 GUI 视图的外面。然后各种 GUI 动作就能成了模型上的简单方法调用。这样,对GUI测试者来说,通过方法调用测试功能比间接地测试功能容易的多。另一个好处是它使修改程序功能而不影响视图变的更容易 。 软件可测试性设计方法(续) 5、可分解性设计 1)业务流程的可分解性设计 。 对于复杂的业务流程需合理设定分

文档评论(0)

沙卡娜 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档