测试技术不断细分

来源:互联网 发布:java中list排序方法 编辑:程序博客网 时间:2024/06/06 00:33

  纵观十年来测试技术在中国的发展历程,我们可以看到,软件测试技术正在经历不断细分的过展,这种现象符合事物的发展规律。因为人们对事物的认识总是由浅入深,由最初粗浅的认识到越来越系统化,

  最初大家只是关注于测试功能测试,引进了功能技术理论,如大家所熟知的等价类划分法、边界值法等,最近几年,随着大家对质量重视程度的提高,人们不再满足于软件功能的实现,更看重于软件产品或系统的性能,加上测试工作者及测试厂商的努力,性能测试工具得到了较为广泛的应用,在性能测试方面的实践不断得到积累,测试工作者们总结出在性能测试方面的一些理论与方法,如负载测试、压力测试、大数据量测试等。相信在不久的将来,在性能测试方面,还会有新的理论方法补充进来。除此之外,根据软件应用领域及软件类型的不同,出现了一些更加专业的测试技术类型,下面挑选几种主要的测试技术进行介绍:

WEB应用测试

  B/S架构的大行其道,催生了人们对WEB应用测试的研究,WEB应用测试继承了传统测试方法,同时结合WEB应用的特点。比起任何其他类型的应用,Web应用运行在更多的硬件和软件平台上,这些平台的性质可在任何时间改变,完全不在Web应用开发人员的知识或控制之内。2003年电子工业出版社引进了美国hung q.nguyen所著的《WEB应用测试》,2009年由刘德宝所著的《web项目测试实战 》面市。随着WEB应用的不断发展,也同样衍生出一些新的研究方向,如最近沸沸扬扬的云计算测试,针对SASS应用的测试等。

   手机软件测试

  出现手机软件测试这个研究分支,主要是因为手机在中国应用特别普遍,使用范围很广,围绕手机所出现的软件种类越来越丰富,有很多专门从事手机软件的开发公司,于是自然而然出现一批手机软件测试的工程师。同时由于手机软件的特殊性,如使用一些专门的操作系统,加上手机内存及CPU相对较小等特点,手机软件的测试有其部分特殊技术方法,2009年电子工业出版社出版了《手机软件测试最佳实践》一书,感光趣的朋友可以参考一下。

   嵌入式软件测试

  随着信息技术和工业领域的不断融合,嵌入式系统的应用越来越广泛,可以预言,嵌入式软件将有更为广泛的发展空间。对于嵌入式软件的测试也将有着很大的市场需求。

  由于嵌入式系统的自身特点,如实时性(Real-timing),内存不丰富,I / O通道少,开发工具昂贵,并且与硬件紧密相关,CPU种类繁多等等。嵌入式软件的开发和测试也就与一般商用软件的开发和测试策略有了很大的不同,可以说嵌入式软件是最难测试的一种软件。

   安全测试

  近些年来,随着计算机网络的迅速发展和软件的广泛应用,软件的安全性己经成为备受关注的一个方面,渐渐融入我们的生活,成为关系到金融、电力、交通、医疗、政府以及军事等各个领域的关键问题。尤其在当前黑客肆虐,病毒猖撅的网络环境下,越来越多的软件因为自身存在的安全漏洞,造成黑客以及病毒攻击的对象,给用户带来严重的安全隐患。软件安全漏洞造成的重大损失以及还在不断增长的漏洞数量使人们已经开始深刻认识到软件安全的重要性。从上世纪90年代,信息安全学者、计算机安全研究人员就开始了对计算机安全问题的研究,并且成为软件测试技术的一个重要分支。

   可靠性测试

  软件可靠性是指在规定的时间内,规定的条件下,软件不引起系统失效的能力,其概率度量称为软件可靠度。,软件可靠性测试是指为了保证和验证软件的可靠性要求而对软件进行的测试。其采用的是按照软件运行剖面(对软件实际使用情况的统计规律的描述)对软件进行随机测试的测试方法。

  软件可靠性测试不同于硬件可靠性测试,这主要是因为二者失效的原因不同。硬件失效一般是由于元器件的老化引起的,因此硬件可靠性测试强调随机选取多个相同的产品,统计它们的正常运行时间。正常运行的平均时间越长,则硬件就越可靠。软件失效是由设计缺陷造成的,软件的输入决定是否会遇到软件内部存在的故障。因此,使用同样一组输入反复测试软件并记录其失效数据是没有意义的。在软件没有改动的情况下,这种数据只是首次记录的不断重复,不能用来估计软件可靠性。软件可靠性测试强调按实际使用的概率分布随机选择输入,并强调测试需求的覆盖面。软件可靠性测试也不同于一般的软件功能测试。相比之下,软件可靠性测试更强调测试输入与典型使用环境输入统计特性的一致,强调对功能、输入、数据域及其相关概率的先期识别。测试实例的采样策略也不同,软件可靠性测试必须按照使用的概率分布随机地选择测试实例,这样才能得到比较准确的可靠性估计,也有利于找出对软件可靠性影响较大的故障。

原创粉丝点击