2023年12月30日发(作者:reword)
软件测试过程的质量控制
摘要:软件测试工作可以发现和解决软件存在的缺陷,实际工作中,软件测试工作是一个十分复杂的过程,必须合理规划才能保证质量控制效果。本文就研究软件测试过程中如何控制测试质量,明确测试工作重点,分析测试工作中需要使用的方法。
关键词:软件测试;过程;质量控制;策略
引言:软件开发后会存在一定的缺陷,影响软件的正常使用,不利于软件功能实现。为了保证软件的质量,就需要使用科学方法开展软件测试工作,有效控制软件测试的过程,满足对软件质量控制的需要,提升软件的稳定性。
1 软件测试概述
1.1 软件测试的目的
软件测试的目的在于保证软件产品质量,测试中发现软件的质量问题并予以解决,提升软件的可靠性。根据不同立场,软件测试有两种不同目的,从用户角度出发,软件测试的目标在于暴露软件的缺陷和漏洞,通过解决软件的不足让软件可以被用户接受;软件的开发者角度出发,则希望通过测试证明软件中不存在错误,表面软件能满足用户的要求,给投资方、使用者带来对软件的信心,所以开发人员倾向于选择程序失效概率更小的测试用例,并回避容易暴露程序错误的用例,排除程序的副作用。软件开发者的测试对于提升软件质量并没有太多意义,因为很多程序的使用问题都出现在特定的条件下,必须建立特殊的使用环境才能将程序中的问题暴露出来。而在用户的角度,就需要揭露程序运行和使用中可能出现的错误,并通过软件测试发现程序中存在的错误。
结合以上需求,软件测试的目的包括以下几个方面:程序的测试工作是一个过程,所以目的在于发现程序中错误,好的测试用例在于能发现至今没有发现的程序错误,成功的测试在于能发现至今没有发现的错误。所以测试工作的目标[2][1]
就在于能用尽量少的时间找到软件中的错误和缺陷,而测试附带的收获在于能够表面软件的功能和性能与实际需求相符合,以及利用测试收集到的数据结果确定软件的可靠性。
1.2 软件测试原则
1.2.1 程序员避免检查自己的程序
软件测试工作应坚持严谨、客观和冷静,但是任何人都有不愿否定自己工作的心理,导致程序测试的工作中如果出现问题十分不愉快,因此会倾向于在测试中回避可能出现的问题。所以软件测试时应该由其他人员编写测试程序,提升测试程序的客观性和有效性。
1.2.2 测试用例包括合理、不合理输入条件
合理的输入条件是能验证程序正确的输入条件,不合理输入条件是指可能导致程序异常的临界输入条件。程序测试过程中,多数人都倾向于使用合法、符合期望的输入条件,检查程序是否进行应该做的工作,并且会忽略不合法的预想和输入条件。但是软件投入实际工作中,用户往往不会遵循事先约定会输入意外信息或者非法命令,如果软件针对这类意外情况不能做出适当反应,软件就容易产生故障。所以在测试过程中也需要使用不合理输入条件用例,测试软件在各种环境下的工作状态。
1.2.3 尽早开展测试工作
软件具有一定复杂性和抽象性,并且软件开发是一个具有多样性的工作,单个软件同时会有很多人员一同参与开发,人员之间的能力区别、配合关系,会导致在软件开发的不同阶段都产生错误。为了能尽早发现错误,测试工作应该尽早开展,并且贯穿于软件开发环节的每个阶段,坚持在各个开发阶段的技术评审工作,预防开发过程中存在的错误。
1.3 软件测试分类
1.3.1 根据开发阶段划分
[3]
单元测试。单元测试也被称作模块测试,会将软件设计为最小单位,检验软件模块的正确性。包括检测软件的接口是否规范、性能是否满足要求等等,并发现模块内可能出现的各种错误。所以单元测试要从程序内部结构出发设计测试用例,并且针对不同模块平行地进行独立测试。
集成测试。集成测试实在单元测试基础上对程序模块进行有序、递增的测试,集成测试能检验程序单元部件、接口的关系,使程序能集成为符合是合计要求的系统。
确认测试。确认测试主要确认软件是否满足特定预期用途和需求。
系统测试。系统测试分析系统是否达到了原始目标,可以对软件和硬件进行集成测试,可以检查系统配置是否正确,能否满足用户要求。
验收测试。验收测试会对整个文档和系统进行评审,决定是否接收系统。
2 软件缺陷分析
2.1 软件缺陷定义
软件缺陷包括:软件没有达到应有的功能;软件的表现和说明书中不一致;软件功能超出说明书范围;软件不符合客户的预期目标;测试人员或者用户认为软件的易用性不足。不是所有的软件缺陷都会修改,因为修改需要时间,但是软件需要面对市场压力,有些软件缺陷来自于操作错误,并且如果软件错误影响的模块较多,将会给修改带来比较大的风险,或者修改性价比低时也会进行修改。
2.2 软件缺陷生命周期
软件缺陷的生命周期是指软件缺陷从被发现、报告、到缺陷被修复的完成过程,在理想的状态下,软件缺陷的修复过程为测试人员发现缺陷报告给开发人员,开发人员根据缺陷进行修复,提交给测试人员验证,测试人员通过验证修复过的软件,关闭不存在的缺陷。在实际过程中,由于软件的复杂性,所以软件缺陷修复工作很难完成,需要不断重复修改。
2.3 软件缺陷分类
[5][4]
2.3.1 软件缺陷属性
表1 缺陷属性
缺陷标识
缺陷标志是某个缺陷的符号,每个缺陷都要有缺陷标识。
缺陷类型
缺陷类型是根据缺陷自然属性划分的缺陷种类。
缺陷严重程度
缺陷存在对软件正常运行的影响。
缺陷状态
当前缺陷的修复进展。
缺陷来源
缺陷出现的原因。
缺陷根源
导致缺陷出现的根本因素。
2.3.2 软件缺陷类型
缺陷可能来自于语法错误、拼写错误导致程序的语句存在问题,这类缺陷比较容易解决。有些缺陷存在在程序的设计中,比如程序存在逻辑错误,导致程序不能运行和造成程序崩溃。有些缺陷实在需求、规格说明、文档中存在错误,不
利于程序的使用。在软件测试时,需要分析缺陷的种类,然后使用对应方法控制程序缺陷。
3 软件测试过程质量控制
3.1 采取工程化质量管理方法
软件测试工作可以使用工程化瀑布模型,根据模型中对软件开发进行阶段划分,分析软件测试工作需求,做好软件测试各个阶段的划分,包括调研,分析和提取测试需求,测试设计阶段建立测试工作产品基线。各个阶段的产品在通过评审之后,才能进入到下一阶段,确保测试覆盖的全面性,保证对质量控制的整体效果。
分析测试需求时,应分析软件研制任务和软件需求之间的关系,并通过测试对软件是否满足需求进行追踪工作,结合以往项目经验,补充用户对程序的隐含需求,保证软件测试能实现对需求的全面覆盖。
测试设计中,需要对每个测试需求都进行设计,规划测试点所使用的测试用例、测试方法和用例数目,确定测试输入的数据以及测试的输入步骤。编写用例时,应该根据数据和测试步骤具体化要求建立测试用例集。
3.2 维护测试用例
对测试用例的维护工作也是一个不间断的过程,维护应该以客户需求和软件开发基线作为标准。随着测试和软件开发工作的进行,一些用例可能会不再适合测试系统,由于需求的改变,就需要去掉该功能,以及在软件每次修改后都要改将过时的测试用例删除。在进行两条或者更多条测试时,会对一组输入和输出进行测试,这就导致测试中的一些用例使用冗余,由于冗余测试用例的存在,会造成回归测试效率严重降低,所以必须定期清理测试用例库,清除冗余测试用例。在客户有新需求时,应该分析测试中缺少哪些重要的功能测试,需要开发新的用例开展测试工作,将开发测试的用例测试合并到基线测试中。
3.3 加强测试工作中的产品配置管理
[7][6]
测试项目配置管理工作可以保证在整个测试项目生命周期内的产品完整性,测试项目配置管理包括在给定时间点上及时提供项目配置,并系统地开展配置更改工作,在整个测试项目和生命周期内确保是配置的完整性和可追踪性。为了保证测试工作的质量,需要对测试工作产品、测试基线建立测试基线库。在测试项目配置工作中,应该具备更改控制和配置审核的职能,以便可以系统地控制基线的更改。
3.4 规范软件的测试过程
制定规范、提升规范性能提升软件测试工作的可控性,可以保证测试工作的结果符合需要,提升测试质量,以及加强对测试过程的改进。通过建立规范性的测试过程,保证测试全过程的一致性,确保测试工作目标明确。测试之前首先要做好准备工作,先进行测试过程各个阶段的划分,包括测试策划、测试设计、测试执行、测试总结等阶段,并明确不同阶段对人员的要求,合理进行人员分工。在测试工作中,应围绕测试工作主线建立质量保证、测试配置管理两条监督线路,根据测试工作的各个阶段进行测试过程质量控制,对测试基线和测试工作产品进行严格的质量管理。
3.5 过程监督制度
由于不同专业的测试工程师专业背景、项目工作经验有很大区别,为了保证测试结果的一致性,需要建立过程监督制度。监督工作的重点在于测试项目中一些新员工所进行的测试工作,检查目前对新标准、新规范的执行情况,以及保证测试工程师和被测软件专业人员的差异。监督可以采用观察、提问、抽查、结果验证等方法,保证测试工作内容符合规定要求,确保使用正确的测试方法。要监督测试项目的环境是否合适,原始记录是否符合要求,分析各种配置管理工作的有效性。
结束语:软件测试工作决定了软件能否实现事先设计的功能,为此需要严格控制软件测试过程,保证测试工作的质量。测试工作中,应建立有效的监督制度,完善测试工作的规划,建立明确标准,保证测试工作有序进行,解决软件存在的质量问题。
参考文献:
[1]丁凝.软件测试过程的质量控制分析[J].网络安全技术与应用,2021(05):65-66.
[2]张赟.软件测试过程质量控制的有效策略[J].福建电脑,2020,36(11):96-97.
[3]廖梦虎.对软件测试过程中的质量管理及风险应对分析[J].电脑知识与技术,2019,15(21):80-81.
[4]高新.软件测试过程中的质量管理及风险应对分析[J].无线互联科技,2019,16(13):31-32.
[5]阚青.对软件测试过程中的质量管理及风险应对分析[J].电子技术与软件工程,2019(03):40.
[6]薛金山.软件开发项目过程质量控制要点[J].电子制作,2013(22):57.
[7]储海华. 离岸外包软件测试的质量管理方法研究与应用[D].上海交通大学,2013.
本文发布于:2023-12-30 18:52:23,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/zhishi/a/1703933543131706.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:软件测试过程的质量控制.doc
本文 PDF 下载地址:软件测试过程的质量控制.pdf
留言与评论(共有 0 条评论) |