软件测试在软件开发中的应用研究

2020-10-09 11:13陈梦泉陆霞
科学与信息化 2020年26期
关键词:软件测试软件开发应用

陈梦泉 陆霞

摘 要 随着信息时代的快速推进,软件在人们日常生活及生产过程中的作用越来越不容忽视。因此,为最大限度减少软件运行过程中出现错误的概率,进而保障软件质量,相关的软件开发工作人员在各个阶段做好软件性能的测试工作非常重要。本文首先从软件测试的对象、分类与方法等几个方面对软件测试进行概述,然后分析了软件测试在软件开发中的重要作用,最后重点探讨了软件测试在软件开发中的具体应用,以期能够为提升软件开发与测试质量提供一定的借鉴与参考。

关键词 软件测试;软件开发;应用

1软件测试概述

1.1 软件测试的对象

所谓软件测试,指的是贯穿于软件开发整个生命周期的能够使软件的一些特定功能得以正确实现的一系列活动,同时又能证实在特定环境当中软件的逻辑正确性。通常情况下软件测试的对象不仅包括软件开发的需求分析,还包括软件使用规则、设计书与应用程序等[1]。

1.2 软件测试的分类

通常情况下,软件测试包括静态测试与动态测试两种类型。

(1)静态测试

在静态测试当中并不需要展开软件的运用功能,仅仅需要通过人们的查询操作既能够完成。在这一过程当中,既能够有效分析与检测软件的脚本,还能以获取的数据为依据,并对其进行编码,以实现数据准确性的显著提升。另外,静态测试还应当深入展开对软件编程方面的评估工作,并将其中包含的数据控制在合理的范围之内。除此之外,数据程序编写工作人员在完成工作之后,还要进一步审查程序的运行状况,该过程离不开人的操作。既要安排专业的技术工作人员采用科学的手段有效评估已经结束的数据的参考值,还必须严格做好人工审查阶段的核对工作,进而为后续的工作铺平道路。

(2)动态测试

动态测试需要启动软件,在数据运行过程中完成数据的评估与测量等工作,之后以白盒、黑盒固有的方式等为依据开展科学、有效、合理的测试实验,以实现动态测评的目的。与静态测试相比,动态测试的工作量更大,同时由系统、确认、集成与单元测试等多部分组成。单元测试是对软件进行检查与检验的最小的单元模块,使用白盒测试技术既能够对单元进行测试,又能测试多个模块;集成测试指的是以集成测试计划为依据,对软件单位之间接口的正确性进行检查;确认测试的主要目的在于检查软件与用户的需求是否保持一致。由此可见,用户必须参与到实际的测试过程当中。系统测试作为软件测试的一项重要内容,主要采用黑盒测试方法测试软件运行过程中的性能、功能与软硬件环境等。同时软件开发过程中软件系统的测试工作由黑盒测试工程师负责。

1.3 软件测试的方法

最为常见的软件测试方法包括两种,即黑盒测试与白盒测试。

其中黑盒测试也被称为功能测试与数据驱动测试等,这一方法的重点在于已知软件具备的功能,并通过测试来对软件的功能进行检测。在测试过程中,应当将程序看作一个无法打开的黑盒子,并不需要对程序内部结构与特性进行考虑,测试者仅仅需要在程序接口位置处进行测试。黑盒检测仅仅检查程序功能是否按照标准规定正常使用,是否能够正常接收输入数据并产生有效的输出信息等。使用这一方法既能够及时发现软件与数据库连接、软件界面、性能等是否出现异常,又能有效弥补白盒检测存在的不足。

白盒测试也被称为结构测试与逻辑驱动测试等,主要包括逻辑驱动、基本路径测试等多种方法。这一方法已知产品内部的工作过程,并通过测试对产品内部动作是否按照标准规定正常运行等进行检测。以产品内部的结构测试程序为依据,检测程序当中的各条通路是否都能够按照标准规定正常工作,在这一过程中并不需要考虑程序的功能[2]。

2软件测试在软件开发中的作用

软件测试是软件开发过程中的一个重要环节。科学、有效的软件测试不仅能够显著降低软件开发工程人员的工作量,还能使软件的实用性功能得到显著提升,主要是由于电子软件生产过程较为复杂,需要开发的环节众多,而且各个环节对数据的要求均比较严格,进而导致极易出现各种各样的问题或误差。 而软件测试则是将软件开发过程中涉及的各个环节进行整合的一个过程。因此,在软件测试应用过程中,首先应当帮助软件开发商检测与确认软件使用质量;其次,还能为工程师提供科学、准确的数据信息,以期能够为测试软件系统的风险预警评估提供一定的便利,最终实现软件市场价值的显著提升。

3软件测试在软件开发中的具体应用

3.1 在软件需求分析环节的应用

在对软件需求分析进行测试的过程中,测试人员必须认真评估工作量、软件测试风险等,并对软件测试的可行性与风险等进行仔细考虑,以保证软件的花费费用、开发周期与功能等与用户的需求保持一致。另外,软件测试人员还要充分了解客户的软件需求,并就其中存在的问题积极与客户进行协商,以期能够为今后的软件测试工作创造良好的环境[3]。

3.2 在软件系统设计环节的应用

软件系统设计是顺利开展软件开发工作的一项重要保障。一旦软件系统设计出现问题,必将导致出现一些边界性的问题且无法恢复到完整状态,严重时还会导致软件开发工作失败。因此,在软件系统设计过程中,测试工作人员既要牢固掌握设计模型,并认真评估设计模型存在的风险,又要仔细编写测试计划。同时,测试人员还应当尽可能选择一个较好的系统结构,既能够有效减少后期不必要的变更,又能保证测试设计的稳定性与合理性。另外,针对一些特殊业务而言,依然需要通过创建技术边界以满足其需求,以实现软件系统可持续性与不可替代性的显著提升。除此之外,测试工作人员还应当对软件产品的运行环境等进行熟练掌握,并积极参与到各环节的讨论当中,认真评估软件设计工作存在的问题,并准确把握测试环节的重难点问题,进而为做好后期的测试工作创造良好的基础条件。

3.3 在软件代码编写环节的应用

在编写软件代码时,测试工作人员既要参与到单元测试、代码冻结与完成报告、编写测试用例等工作当中,还要积极做好编写测试的案例分析工作。通常情况下,软件开发人员能够独立完成软件单元测试工作,但是由于自动化测试脚本、测试用例等都离不开测试人员的操作,所以,测试人员应当以软件开发要求为依据,严格做好软件编写环节测试工作。

3.4 在软件测试环节的应用

在实际的软件测试工作当中,相关工作人员的主要工作任务包括发布软件质量报告、发现并检查软件缺陷、更新测试用例等。这一环节是软件开发过程中的一个关键环节,主要包括系统测试、确认测试、集成测试等多部分内容。 因此,软件测试工作必须严格按照测试用例进行严格实施。通过以上测试,软件的基本功能均能够实现,然而对于一些特殊用例还应当与实际情况相结合进行自由测试,以尽可能找出软件当中存在的问题。另外,为确保软件的正常运行,若没有发现新的问题应当及时对测试用例进行优化或更新。除此之外,还应当对软件存在的问题进行跟踪,特别是针对新的软件项目而言,应当严格依据新报、确认、重现、修复等一系列流程进行[4]。

3.5 在软件运行维护环节的应用

在这一环节当中,软件测试工作人员的主要任务包括重组测试用例、 解决客户提出的问题、测试验收等,其中帮助客户做好验收测试是软件运行维护环节的一项重要工作,较好地解决客户提出的问题非常关键。因此,软件测试人员必须认真对待客户提出的各个问题,并站在客户的角度真正了解客户关心的问题。另外,还要针对前期测试无法及时找出软件存在问题的原因进行认真分析。除此之外,在软件运行维护过程中,测试工作人员还应当结合实际需要及时对测试用例进行重组与更新,以有效弥补未设计测试用例存在的缺陷。

参考文献

[1] 王一帆.软件测试在软件开发中应用的探讨[J].电子世界,2019 (1):54,56.

[2] 吴文庆,修雅慧.软件测试在软件开发中应用的探讨[J].职业技术,2018(11):83-85.

[3] 潘祯,吴永强,王艳华.软件測试在软件开发中应用的探讨[J].硅谷,2011(22):156-157.

[4] 朱寅非.软件测试在软件开发过程中的应用探析[J].无线互联科技,2013(5):48.

作者简介

陈梦泉(1985-),男,广西融水县人;学历:本科,职称:助理工程师,现就职单位:柳城县人工影响天气管理中心,研究方向:地面气象观测、装备保障、预报。

猜你喜欢
软件测试软件开发应用
软件测试方向人才培养“1+X”融合研究
大数据背景下软件测试技术的发展
关于 Web 应用系统的软件测试的研究
信息安全环境下的计算机软件开发研究
核电厂定期试验管理软件开发
FPGA软件开发过程中编码规范的作用
GM(1,1)白化微分优化方程预测模型建模过程应用分析
煤矿井下坑道钻机人机工程学应用分析
气体分离提纯应用变压吸附技术的分析
会计与统计的比较研究