欢迎来到天天文库
浏览记录
ID:44619242
大小:143.50 KB
页数:19页
时间:2019-10-24
《测试策略_软件测试面试必备》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、一软件测试面试必备第17章软件测试策略软件测试策略把软件测试用例的设计方法集成到一系列已经周密计划过的步骤中去,从而使得软件的开发得以成功的完成。同样重耍的是,软件测试策略为软件开发人员、质量保证组织、和客户提供了一个路线图一这个路线图描述了测试的步骤,以及当这些步骤在计划和实施的过程中,需要多少工作量、时间、和资源。因此,任何测试策略都必须和测试计划、测试用例设计、测试执行、还有测试结果数据的收集与分析结合在一起。一种软件测试策略应当具备足够的灵活性,这样在必要的时候它能够冇足够的创适性和可犁性來应付所有的大软件系统。与此同时,软件测试策略还必须保证足够的严格,这样才能保证对项目的整个
2、进程进行合理的计划和跟踪管理。Shooman[SHO83]对这个问题进行了探讨:在许多情况下,测试是一个独立的过程,不同的测试类熨的数量利不同的开发方法是一样多。许多年以來,我们対付程序出错的唯一•武器就是谨慎的设计,以及程序员个人的智慧。我们现在处于这样的一个时代——现代设计技术(和正式的技术复审)正在帮助我们减少代码中存在的初始错误。类似地,不同的测试方法正在开始聚合为有限的儿种方法和思想。这些方法和思想就是我们所说的策略。在第16章中,我们已经介绍了软件测试技术①。在本章中,我们将会把注意力放在软件测试策略上。17.1软件测试的策略途径测试是一系列可以事先计划并且可以系统地进行管理
3、的活动。正是由于这个原因,应当为软件工程过程定义一个软件测试的模板——即我们可以把特定的测试用例设计方法放置进去的一系列步骤。人们已经提出了许多软件测试策略,所有这些策略都为软件开发人员提供了一个供测试用的模板,而且它们都包含下列的类屈特征:•测试开始于模块层辺,然后“延伸”到整个基于计算机的系统集合中。・不同的测试技术适川于不同的时间点。•测试是由软件的开发人员和(对大型系统来说)独立的测试组來管理的。•测试和调试是不同的活动,但是调试必须能够适应任何的测试策略。软件测试策略必须提供町以用來检验一小段源代码是否得以正确实现的低层测试,同时也要提供能够验证整个系统的功能是否符合用户需求的
4、高层测试。一种策略必须为使用者提供指南,并且为管理者提供一系列的重要的程碑。因为测试策略的步骤是在软件完成的最终期限的压力已经开始出现的时候才开始进行的,所以测试的进度必须是可测量的,而且问题要尽可能早的暴露出来才好。17.1.1验证和确认软件测试是我们通常所讲的一个更为广泛的话题验证利确认(VerificationandValidation,V&V)的一个部分。验证指的是保证软件正确地实现了某一特定功能的一系列活动。确认指■的则是保证软件的实现满足了用户需求的一系列活动。Boehm[B0E81]是用另外-•种方法來解释这两者的区别的:验证:“我们是否正确地完成了产品?”确认:“我们是否
5、完成了正确的产品?”V&V的定义还包含了许多我们称作软件质最保证(SQA)的许多活动。回忆一下我们在第8章中对软件质量的讨论。为了获取软件质量而必需的活动可以看作是图17-1中所描绘的一些组成部分。软件工程方法提供了质量的基础,分析、设计和构造(编码)方法通过提供一致的技术和可预测的结果而帮助提高质量,正式的技术复审(跟踪检查)冇助于保证作为每一个软件工程步骤的结果而产生的工作产品的质暈。在这些过程当屮,测度和控制被应用于软件配置的每一个元素中。标准和规程也有助于保证一致性,而一个形式化的SQA过程保证了“整套质量思想”的实现。测试是质暈可以被评佔——更实际点说,错误可以被发现——的最后
6、堡金,但是,测试不应当被视为一个安全网。象人们所说的那样,'‘你不能测试质量。如果你开始测试的时候它不在那里,那么当你完成测试的时候它仍然不会在那里”。质量在软件的整个过程屮都和软件结合在一起。方法和工具的正确使用,有效的正式技术复审和可靠的管理与测度都可以导致在测试过程屮得以认可的质量。Miller[M1L77]把软件测试和质量保证联系在一起:“程序测试的内在动机是使用对大规模系统和小规模系统都能节约地并且有效地应用的方法來认可软件的质量。”需要重点加以注意的是,验证和确认包含了范围很广的SQA活动,其中包括正式技术复审、质量和配置审査、性能监控、仿真、可行性研究、文档复审、数据库复审
7、、算法分析、开发测试、质量测试和安装测试[WAL89]。虽然测试在V&V中发挥着非常重婆的作用,但是其他的活动也是必要的。17.1.2软件测试的组织对每一个软件项目来说,在测试开始的时候总会产生一些固冇的利益冲突。开发软件的人们现在开始被要求对软件进行测试。这本身來说似乎是无害的:毕竟,谁能比开发人员更了解这个软件呢?不幸的是,这些开发人员冇很高的兴趣要急于证明他们的程序是亳无错谋的,是按照用户的需求开发的,而且完全能够按照预定的进
此文档下载收益归作者所有