软件测试策略和测试方法的应用

(整期优先)网络出版时间:2019-12-16
/ 2

软件测试策略和测试方法的应用

李艳芳

长城汽车股份有限公司天津哈弗分公司 天津 300462

摘要:软件测试主要是指软件在开发到一定程度之后的性能测试,其主要目的在于发现软件当中的缺陷以及措施。普遍情况下,软件测试是按照开发过程中的结构、规格等进行测试,在输入数据之后分析预测结果并分析输出结果,从而发现软件的漏洞,分析其原因。对此,研究软件测试的策略以及方法有着显著的显示意义。

关键词:软件测试;策略;测试方法

引言

随着社会经济的大力发展以及科学信息技术的不断进步,我国信息服务业获得了较大的发展,尤其是软件工程。随之而来的是,人们对软件产品质量的要求越来越高。因此,如何提高软件产品的质量已成为当前亟需解决的重要问题。又软件测试是软件开发过程中的关键环节,其工作是否做到位直接影响了软件产品的质量。故而,对软件测试方法及其策略的应用进行探讨已成为当前研究的重要课题之一。

1软件测试的基本测试方法

所谓“软件测试”是指,在规定的条件下对程序进行操作,以此来对程序的错误进行发现、软件的质量进行衡量,并对其是否能满足设计要求进行评估的过程。同时,软件测试是软件开发过程中不可或缺的重要环节,它直接影响了软件产品的质量。因此,对软件测试的基本测试方法进行分析,有着重要的意义。一般而言,软件测试的基本测试方法主要包括黑盒测试、白盒测试、功能测试、性能测试、压力测试、安全性测试、可用性测试、安装测试、异常测试以及健壮性测试等。其中,黑盒测试与白盒测试是最为常见的软件测试方法。值得注意的是,在采用黑盒测试方法对所开发的软件进行测试时,测试人员不仅要对全部合法的输入进行测试,而且还要对其非法的输入进行测试,以此来确保软件的质量;而在采用白盒测试方法对所开发的软件进行测试时,则应尽可能地提高测试的覆盖率。

2软件测试方法

2.1黑盒、白盒测试

黑盒测试相对于白盒而言更加注重功能性,并且也被称之为功能测试,其主要是将测试的对象看做成为一个封闭的黑盒,不考虑内部的任何结构或程序,按照规格说明书的程序结构信息进行动态测试。黑盒测试主要是验证软件的正确性,按照软件具备功能进行设计,从而符合软件与其的功能性要求,其主要可能会发生以下几类问题:功能不正确或遗漏、界面输入或输出错误等。白盒测试相对于黑盒测试而言,白盒相当于是一个打开的盒子,更在注重与软件结构自身的性能,所以白盒测试也可以被称为是结构性测试。白盒测试主要是使用逻辑驱动、记录测试等方式为主,其主要是以穷举路径测试。对此,这一方式必须有一定的前提,也就是测试开始之前需要充分检查程序内部的逻辑以及结构,并以检查结果作为测试的基础数据。

2.2静态、动态测试

动态测试主要是基于测试的用例,借助运行软件来测试系统的动态行为,以动态的工作实行测试分析。动态测试的两大要素主要包含测试用例以及测试程序,其主要的应用范围在院单元测试、验收测试以及集成测试;静态测试主要是对源程序、文档文件、数据定义等进行控制测试。静态测试能够实现代码审查、静态分析,代码审查主要是一种人工的检测方式,其主要包含代码的走审以及评审,其主要是引用测试人员借助工作经历来圆度程度的代码,从而发现代码的缺陷与措施。

3软件测试策略

软件测试对于软件开发而言,至关重要。它既是软件开发过程中不可或缺的技术活动,又是始终贯穿于整个软件开发过程的一个系统工程。因此,如何通过较少的软件测试来最大限度地将开发中软件所具有的瑕疵找出来已成为当前亟需解决的重要问题之一。又软件测试的过程一般被分为单元测试、集成测试、系统测试以及验收测试这四个阶段。基于此,由上文所述测试方法,本文从这四个阶段着手来具体对在软件测试过程中合理应用测试的策略进行分析。其具体内容如下:

3.1系统测试策略

系统测试的阶段主要是在测试系统是否能够满足软件的使用要求,相对于两个阶段而言比较复杂,其主要是因为软件在开发过程中会发生随意性的变动而形成功能的增删目的,但是在这个过程中会按照实际情况不断的更改、优化程序,而更改完成之后的程序也会因为某些性能问题进行再次测试。系统测试需要检测软件的功能、安全性以及用户界面等方面,对客观性、全面性有一定高度的要求。对此,在系统检测过程中使用的检测方式一般为黑盒方式。针对于系统检测的特殊性,其检测人员应当由一个独立的小组负责,针对系统检测当中的各个单元模块,一般情况下组合需要按照自上而下、自下而上、隔离测试法等结合性的顺序检测方式。

3.2集成测试策略

在集成测试阶段,一般是对已严格按照设计要求组装起来的模块进行同时测试,其目的是为了将与接口相关的问题发现找出来。一般而言,与接口有关的问题主要表现为:数据在穿过接口时有可能会出现丢失的情况,两个模块可能因疏忽而导致其出现有害的影响,将子功能组合起来之后所产生的功能可能达不到预期的主功能,本可以接受的误差可能因长期的积累会达到不能接受的程度,全程的数据结构是否有差错存在,等等。同时,由于集成测试是处在单元测试与系统测试之间的,发挥着承上启下的作用。因此,测试人员必须重视并做好这一阶段的测试工作。当前,在集成测试阶段,测试人员主要采用的测试策略同样是白盒法与黑盒法相结合的方式。值得注意的是,本阶段测试主要是对设计的合理性和需求功能的实现性进行验证。

3.3单元测试策略

一般而言,单元测试主要是对软件设计的模块进行检查,其目的是为了检查该模块的定义与实际功能是否与功能说明相符合以及其编码是否正确。在单元测试阶段,通常采用白盒法与黑盒法相结合的方式来进行测试。同时,由于模块具有规模较小、逻辑简单以及功能单一的特点;因此,测试人员在对其进行测试时首先应通过阅读与该模块相关的源程序和说明书来对其逻辑结构和I/O条件进行清楚地了解;然后再采用白盒法中的结构性测试来对其进行测试,并使其尽可能地实现彻底测试;最后再在此基础上,辅之以黑盒法中的功能性测试,以此来将软件中任何合理或不合理的输入均鉴别和响应出来。

3.4验收测试策略

与系统测试相比,验收测试的区别仅仅是测试人员有所不同,其测试是由用户来执行的,其目的是为了向用户证明所开发的软件能够如预定要求一样工作。同时,本阶段测试的主要任务是对软件的有效性进行验证。通常,经过上述的测试过程后,软件基本上均可达到预期的目的。在此基础上,测试人员便可宣告测试结束。待验收后,则可以将软件提交给用户。虽然如此,但是从用户的角度出发,软件测试还应进行Alpha测试或者是Beta测试。其中,Alpha测试是由用户在软件开发的环境下进行的,其目的主要是为了对软件产品的功能、可使用性以及性能等进行评价。而Beta测试则是由多个用户在实际使用的环境下来对所开发的软件进行测试,其目的主要是为了将错误的信息返回给开发者。

结语

综上所述,软件测试将会直接关系到软件的使用质量以及用户体验感受,对于软件开发有着非常重要的影响。本文所提出的测试策略以及测试方式主要是目前应用较为普遍的一种策略与方式,随着时间的推移以及技术的发展,在今后的工作中必然需要对策略以及方式进行不断的改进、创新,确保软件能够真正符合用户的使用要求。

参考文献

[1]李雯睿,张鹏程,杨种学.基于主动学习策略的软件测试教学方法初探[J].计算机教育,2012(8):54-57.

[2]吴少君.软件测试策略和测试方法的应用[J].硅谷,2013(15).