软件测试有什么意义?

3小时前 (15:01:21)阅读1回复0
xxhh
xxhh
  • 管理员
  • 注册排名4
  • 经验值94575
  • 级别管理员
  • 主题18915
  • 回复0
楼主

  良多人都认为,开发法式是困难的,测试法式比力随便。那其实是曲解。设想测试用例是一项详尽并需要高度身手的工做,稍有失慎就会捉襟见肘,发作不该有的疏漏。

不管是黑盒测试办法仍是白盒测试办法,因为测试情状数量浩荡,都不成能停止彻底的测试。所谓彻底测试,就是让被测法式在一切可能的输进情状下全数施行一遍。

  凡是也称那种测试为“穷举测试”。 “黑盒”法是穷举输进测试,只要把所有可能的输进都做为测试情状利用,才气以那种办法查出法式中所有的错误。现实上测试情状有无限多个,人们不只要测试所有合法的输进,并且还要对那些不合法但是可能的输进停止测试。 “白盒”法是穷举途径测试,贯串法式的独立途径数是天文数字,但即便每条途径都测试了仍然可能有错误。

  第一,穷举途径测试决不克不及查出法式违背了设想标准,即法式自己是个错误的法式。第二,穷举途径测试不成能查出法式中因遗漏途径而出错。第三,穷举途径测试可能发现不了一些与数据相关的错误。E.W.Dijkstra的一句名言对测试的不彻底性做了很好的注解:“法式测试只能证明错误的存在,但不克不及证明错误不存在”。

在现实测试中,穷举测试工做量太大,理论上行欠亨,那就必定了一实在际测试都是不彻底的。当然就不克不及够包管被测试法式中不存在遗留的错误。软件工程的总目标是足够操纵有限的人力和物力资本,高效率、高量量地完成测试。为了降低测试成本,抉择测试用例时应重视遵守“经济性”的原则。

  第一,要根据法式的重要性和一旦发作毛病将形成的缺失来确定它的测试品级;第二,要认实研究测试战略,以便能利用尽可能少的测试用例,发现尽可能多的法式错误。掌握好测试量是至关重要的,一位有体味的软件开发治理人员在谈到软件测试时曾如许说过:“不敷够的测试是愚笨的,而过度的测试是一种功孽”。

  测试不敷意味着让用户承担隐躲错误带来的求助紧急,过度测试则会浪费许多贵重的资本。

测试是软件保存期中费用消耗更大的环节。测试费用除了测试的间接消耗外,还包罗其它的相关费用。可以决定需要做几次测试的次要影响因素如下:

①、系统的目标

系统的目标的区别在很大水平上影响所需要停止的测试的数量。

  那些可能产生严峻后果的系统必需要停止更多的测试。一台在Boeing 757上的系统应该比一个用于公共藏书楼中检索材料的系统需要更多的测试。一个用来掌握密封燃气管道的系统应该比一个与有毒爆炸物品无关的系统有更高的可信度。一个平安关键软件的开发组比一个游戏软件开发组要有苛刻得多的查找错误方面的要求。

②、潜在的用户数量

一个系统的潜在用户数量也在很大水平上影响了测试需要性的水平。那次要是因为用户团体在经济方面的影响。一个在全世界范畴内有几千个用户的系统必定比一个只在办公室中运行的有两三个用户的系统需要更多的测试。假设不克不及利用的话,前一个系统的经济影响必定比后一个系统大。

  除此而外,在分配处置错误的时候,所花的代价的区别也很大。假设在内部系统中发现了一个严峻的错误,在处置错误的时候的费用就相对少一些,假设要处置一个遍及全世界的错误就需要破费相当大的财力和精神。

③、信息的价值

在考虑测试的需要性时,还需要将系统中所包罗的信息的价值考虑在内,一个撑持许多家大银行或浩瀚证券交易所的客户机/办事器系统中含有经济价值十分高的内容。

  很显然那一系统需要比一个撑持鞋店的系统要停止更多的测试。那两个系统的用户都期看得到高量量、无错误的系统,但是前一种系统的影响比后一种要大得多。因而我们应该从经济方面考虑,投进与经济价值相对应的时间和金钱往停止测试。

④、开发机构

一个没有原则和贫乏体味的开发机构很可能开发出充满错误的系统。

  在一个成立了原则和有良多体味的开发机构中开发出来的系统中的错误不会良多,因而,关于差别的开发机构来说,所需要的测试的需要性也就截然的差别。 然而,那些需要停止大幅度改进的机构反而不大可能熟悉到本身的弱点。那些需要愈加严厉的测试过程的机构往往是最不成能停止那一活动的,在许多情状下,机构的治理部分其实不能实正天文解开发一个高量量的系统的益处。

⑤、测试的时机

测试量会随时间的推移发作改动。在一个竟争很猛烈的市场里,争取时间可能是造胜的关键,起头可能不会在测试上花几时间,但几年后假设市场分配格局已经成立起来了,那么产物的量量就变得更重要了,测试量就要加大。测试量应该针对适宜的目标停止调整。

0
回帖

软件测试有什么意义? 期待您的回复!

取消