软件测试与测试管理

2017-05-10 19:29叶雨
电子技术与软件工程 2017年8期
关键词:软件测试管理

叶雨

摘 要

当今计算机行业的蓬勃发展,软件开发的需求越来越大,开发规模也逐渐变大,对于软件的安全实用性要求也越来越高,软件测试工作对于保证软件质量有着至关重要的作用,越来越受到人们的重视。本文主要探讨了什么是软件测试以及如何使软件测试管理工作合理地进行。

【关键词】软件测试;测试过程;管理

1 软件测试的定义

软件测试(Software testing)的目的是使所开发的软件符合用户的要求,它是整个软件生存期中非常重要的一个环节。换句话说,软件测试也可以定义为在软件正式投入实际应用前,对软件的需求分析、设计规格说明和编码三方面进行最终审核。IEEE曾经给软件测试拟定了如下的定义,定义表述如下:"软件测试是用人工或自动的手段来运行或检测某个软件系统,其目的在于检验软件是否满足用户的需求并且找出预想结果与实际结果存在的差别"。因此,软件系统是否满足用户需求是软件测试的最终目的。

对于用户来说,软件测试的过程中暴露的隐藏的错误和缺陷越多,用户越高兴,因为对它们来说,发现的错误越多就可以越及时地去解决这些错误。我们在进行软件测试工作时应该根据软件开发各阶段的规格说明和程序的内部结构来编写相应的测试用例,编写完成后运行程序,来检验系统是否存在错误或缺陷。

2 合理的测试流程以及相应的测试管理

一个软件的好坏取决于软件测试工作是否合理和全面,而软件测试工作能否顺利完成关乎着测试工作的质量高低。对测试工作而言,每个测试都有一定的周期,软件测试周期是从产品的需求阶段开始,贯穿整个软件开发过程,并在每个阶段都进行相应的测试活动。以下针对软件开发测试,介绍了一套合理的测试流程,并对每个测试流程提出了相应的测试管理意见。

2.1 软件测试流程

2.1.1 需求阶段

软件测试工作是根据需求来设计的。对于测试人员而言,因为软件使用的群体不同,不同的用户群体关注的目标也不相同,因而各自提出的需求也不一样。针对不同用户提出的含糊的、泛泛的要求,测试人员需要对它们进行概括和总结,从中归纳出不同用户真正的需求。之后针对需求进行分析,制定相应的测试计划,确定测试目标,规定测试的时间和周期,进行需求的验证测试。为了能更好地完成测试,我们可以依照不同的测试情况,比如项目规模的大小,测试人员的素质等制定相应的测试计划。

2.1.2 分析设计阶段

在分析设计阶段,我们可以依据需求文档、设计文档(来自开发)和用户文档来制定相应的计划方案,包括集成测试计划、单元测试计划和测试方案。并对每个测试计划进行跟踪,及时地了解每个测试方案的进度。一旦测试过程出现偏差或者错误,我们可以及时地进行调整和修改。同时我们还可以编写测试用例设计文档,它主要是根据所测试的类型和需求进行编写,因为类型和需求不断地改变,所以测试用例文档也要相应地进行改变,所以编写混合模式的测试用例一种很好的解决方案。此用例是为每个需求点至少设计两个测试用例:一个是正面测试用例,要求完全符合用户提出的任何需求;另一个是负面测试用例,说明存在不合适的条件使得测试用例设计文档不能满足用户需求,并且论证了当满足某一条件时,所写文档能成功通过要求。

2.1.3 编码阶段

首先我们要制定一个测试用例文档模板,其内容主要包括测試用例名称、测试用例描述、测试优先级、事前条件预设、操作步骤、期望结果等。制定完成后,需要由相关的测试人员和开发人员进行评审,根据评审意见进行相应地补充和修改,并在今后地使用中不断更新测试用例。

2.1.4 测试阶段

在测试的过程中,还需要注意以下几个问题:

(1)我们依据测试步骤完成测试工作后,虽然所得结果和期望结果基本一致,但是这并不说明整个测试是成功的,我们还需要对系统的操作日志、系统运行日志和系统资源使用情况进行查看,最终确定是否全面完成所需要达成的目标,这样一整套操作下来才可以称为一个全方位的观察。

(2)记录测试日志。为了保证整个测试流程的顺畅和正确,我们针对测试的每一个流程,都应及时记录相应的测试执行日志。其内容一般包括:哪些测试用例被执行过,由谁执行,这些用例是否正确执行,在执行过程中存在哪些缺陷,遇到哪些问题,测试流程存在哪些风险等,认真记录这些日志,可以为以后测试中再出现相似问题提供解决依据。

(3)对缺陷进行判断与跟踪。测试人员对测试工作中出现的问题无法判断是否是缺陷时,应保留现场,等专业人员过来进行处理;如果软件测试人员可以判断其为缺陷,应及时地提交缺陷报告,并详细地记录在哪些环节出现了什么样的缺陷,提交执行用例后的错误日志。报告提交后,公司一般会派相应的开发人员进行跟踪,或者由发现缺陷的人来跟踪(他们对整个流程更为熟悉),判断是否为缺陷,然后进行缺陷的处理。

(4)对测试用例的更新工作要及时。这是因为:第一、有时我们编写的测试用例不一定完全符合用户要求,可能会出现用例遗漏或者冗余的情况,这时需要进行补充或删除;第二、当今用户需求、软件版本更新太快,测试用例也要及时更新跟上时代的潮流。

3 结束语

本篇文章我们介绍了什么是软件测试以及相应的测试流程,针对测试流程中出现的问题我们也提出了相应的测试管理办法。软件测试作为软件项目管理的一个分支,决定着整个软件工程的质量,我们加强软件测试管理的工作,确保软件测试流程的顺利完成,从而为每一位用户提供优质的软件服务。

参考文献

[1]李新华,陈丽容,马立群等.Edward Kit《软件测试过程改进》[M].北京:机械工业出版社,2003.

[2]于涌.软件性能测试与Load Runner实战[M].北京人民邮电出版社,2008.

[3]蔡啸.软件测试分析及测试方法分类[J].济南职业学院学报,2012(05).

[4]付小颖.软件测试常见问题及误区分析[J].软件导刊,2008(09).

[5]单锦辉,姜瑛,孙萍.软件测试研究进展[J].北京大学学报(自然科学版),2005(01).

猜你喜欢
软件测试管理
枣前期管理再好,后期管不好,前功尽弃
基于OBE的软件测试课程教学改革探索
EXCEL和VBA实现软件测试记录管理
关于软件测试技术应用与发展趋势研究
智能电能表软件测试技术概述
《软件测试》课程教学策略研究