软件测试和软件可靠性研究

(整期优先)网络出版时间:2022-07-21
/ 2

软件测试和软件可靠性研究

范群芳

华为技术有限公司

摘要:计算机软件基本上已渗透至各行各业,其应用范围和规模的持续扩大,在一定程度上增加了软件设计复杂程度,软件开发错误和软件开发缺陷等时间发生频率越来越高。与此同时,随着社会生产生活对软件质量要求的逐步提升,若要从根本上实现软件产品的实际应用过程中的有效性,关键在于进一步提升软件质量和可靠性。而软件测试作为保证软件质量的重要手段之一,如何根据软件检测判断软件产品故障发生根源或隐患发生部位,遏制风险发生范围的扩大,加快构建软件研制相关技术保障体系成为现阶段各大软件开发系统重点关注话题,因此,本文围绕全面提升软件测试水准,提高软件可靠性进行深入研究。

关键词构件软件;可靠性;可靠性过程;软件测试

测控系统的工作环境往往是复杂、恶劣的,影响系统可靠、安全运行的原因主要是来自系统内部和外部的各种电气干扰。抗干扰技术和可靠性设计是计算机测控系统不可忽视的重要内容,软件的可靠性是保正系统安全运行的前提条件,提高软件的可靠性在一定程度上可以避免和减轻意外事故的发生。

一、软件测试概述

软件测试是指软件产品在投放市场前,对软件产品所进行的需求分析,设计的规格和编码等内容的复审,是确保软件产品质量的关键性步骤。

1、必要性。从软件测试的功能角度而言,其具有三方面作用,其中正确性是最为基本的测试保障,脱离了软件的正确性保障任何测试都无意义;而完整性则从代码覆盖率、功能实现的完整性等角度予以探讨;质量性是通过分析、测试软件性能,获得软件运行的可靠性保障。通过对编制的软件进行测试可发现软件运行错误,实现有效程序代码高覆盖率,对软件性能获得初步的了解,是交付给用户最终程序的质量保障。甚至在一些开发领域,“测试先行”的做法也大量存在,根据程序文档编制好测试用例,以测代写的程序编制过程,从而规范了程序开发过程,避免无效代码的出现。总之,软件测试十分关键,应重视软件测试对程序开发质量的保障。

2、目的和流程。随着科技的发展和智能电子终端的普及,各种应用软件蓬勃发展起来,我国的应用软件技术也高速发展起来。但相对国际市场而言,我国的应用软件技术水平还需提高。我国与国际市场产生差距的主要原因是软件测试技术还不成熟,无法保障软件产品的最终质量。当前,提高我国软件产品质量的主要途径是提高软件测试能力。软件测试的目的在于掌控软件产品的质量,软件测试人员的基本目标是发现软件中的错误。通常,软件测试应由独立的产品评测部门或小组负责,严格按软件测试流程进行,首先制定测试计划、测试方案、测试规范,然后实施测试,对测试记录进行分析,并根据测试分析结果撰写测试报告,交给开发人员,开发人员再根据测试报告上的问题针对性修正完善。软件测试并不仅仅只能找出错误,还可通过分析错误产生的原因及分布特征,帮助软件开发人员确定软件的可靠性,以及检验软件的功能与用户需求是否相符合。

二、软件测试是提高软件可靠性的重要保证

软件测试的主要目的是查询潜藏于程序中的错误程序,是一个系统性的任务执行过程。软件可靠性则值得是在规定运行时间内,相关软件产品依据规定条件成功运行的概率。通过对两项内容含义的理解不难看出,在保证软件可靠性过程中,软件测试从中发挥着不可或缺的作用。一般,只有完成相关测试后才可确保系统使用过程中的可靠性。而为了有效保障软件测试的整体效率,需保证测试用例的科学性与合理性,并且还需严格遵照软件生存周期开展软件产品的开发。具体软件测试可以分为两个阶段,前期阶段可为后期阶段任务的完成提供科学的参考和依据,而后期阶段相关任务的完成需要在前期阶段的基础上进行优化和完善,并且在完成上述两个阶段前,需对相关技术和管理内容进行严格的审查,在审查过程中需要确保前期阶段和后期阶段相关文档资料与所开发软件文档资料高度一致,进而在完成软件开发工作后,确保所交付使用软件配置的完整性与准确性,实现对软件可靠性的全面提升。

三、软件测试的生存周期

大量实践表明,在软件开发过程中相关软件开发人员尝试使用了各种方法和技术,以保证软件质量,但尽管如此所开发软件仍隐藏着各种错误与缺陷。因此,在软件可靠性和质量改善和提升过程中,严格的软件测试从中发挥十分重要的作用。在软件生存周期中软件测试占据核心地位。一般情况下,当完成一个软件模块后需要进行单元测试,为当完成全部模块的编码后,还需要以综合性手段完成对软件的系统测试。这一过程极具独立性被称为软件测试阶段。而在实际软件测试阶段,又可划分为两种不同性质的测试,一是开发单位的内部系统测试和集成测试,二是开发单位与系统用户的验收性测试。此外,在软件测试过程中,不同阶段开发者都有可能带入某些错误,在进行错误时又会引发新的错误。因而,当在软件测试过程中一旦发现错误需及时进行修改,并尽快完成修改后的反复测试,进而达到预定测试目标。

四、软件测试技术的应用与优势

1、降低成本,提升质量。

软件测试技术通过数据采集及测试分析,对软件系统的性能与速率进行准确评估,帮助设计人员找出软件存在的漏洞与问题,提高设计人员的开发效率,同时,帮助使用者评估软件产品的安全等级。软件测试技术可帮助软件系统的设计人员了解项目中的问题,提高软件系统的整体质量,降低软件开发成本,有利于提高软件系统的核心竞争力。

2、提高软件等级。计算机信息技术的发展迅猛,已发展出了很多功能全面、结构复杂的软件产品,这些庞杂的系统带来了大量的网络安全隐患,软件测试技术能提高软件的稳定性,保证网络通信与计算机数据库的安全,同时,软件测试技术还能促进软件基础设施的发展。计算网络的发展给软件系统带来了更大的挑战,计算机网络呈现的开放性,导致计算机网络更加的依赖软件的维护。软件测试技术可验证软件是否达标,确保网络底层的软件产品功能、性能等要素。同时,网络也需具备一定的软件检测能力,判断软件的安全性,从而保证软件的安全。

五、软件可靠性的检测方法

①用户和密码的封闭性。软件在用户名和密码输入过程中是否设置校验环节,保护措施是否全面;②用户权限限制。在划分功能模式快时,软件是否将用户权限纳入考虑范围,是否依据相关标准划分权限,超级用户对各用户的权限管理是否有效;③错误提示的准确性。如果用户操作不当或者软件发生错误时,用户能否收到准确有效的错误提示,或者明确错误根源;④屏蔽用户操作错误。考察对用户可否有效避免日期录入错误或日期写入无效等误操作的提示和屏蔽情况;⑤ 错误是否导致系统异常退出;⑥数据备份与恢复手段。对于使用数据库的软件应提供备份与恢复的操作,不需要用户直接对数据库系统进行操作。

结束语

如今,大数据已经应用生活中,使得各个方面变得数字化和智能化。计算机软件技术知识理论逐渐普及,人们对新颖的计算机技术也更加期待,软件应用的服务范围几乎涵盖了人们衣食住行各个方面,为人们的生活、工作和学习带去了新的体验。值得注意的是,在享受大数据为人们服务的同时,人们仍要学会居安思危,要有忧患意识,在使用计算机软件应用处理数据时,千万不能忽略潜在的风险。相信只要合理使用计算机软件应用,就能为身处大数据时代的人们提供更优质生活服务。

参考文献

[1]崔哲.软件测试技术与测试管理[J].电子技术与软件工程,2018(04):40

[2]赵坤.软件测试技术与测试管理研究[J].电子测试,2016(23):141+134

[3]黄斌.探究软件测试技术与测试管理[J].电脑与电信,2016(08):107-109