APP下载

缺陷管理工具对软件测试的作用

2011-12-10孙伟强

上海大中型电机 2011年3期
关键词:样例测试人员管理工具

孙伟强

(上海电机厂有限公司,上海 200240)

0 引言

在大型软件项目实施过程中,软件测试人员担任着发现软件程序中的Bug的责任。在测试一个涉及多方面业务的大型系统(如ERP系统)的过程中,经常会测试出数百个Bug需要开发人员随时更正。这些Bug可能分布在各类子功能中,也可能发现各种类型的Bug。在这种情况下,软件缺陷管理工具是必不可少的。

1 缺陷管理工具缺失对项目的影响

在实际工作实践过程中,没有软件缺陷管理工具的帮助,就可能会出现如下一系列的影响:

(1)软件测试人员将Bug已经提交给了开发人员,但是开发人员可能没有一个很清晰的界面来接收到测试人员提交的Bug信息。

(2)有一些Bug可能是测试人员进行回归测试中测试出的问题,但是不能和第一次测试出此类型的情况进行关联,所引起的结果为不能进行有效的回归测试。

(3)测试样例的版本控制难以做到,不能很清晰地看出Bug所处的状态,是Bug被关闭了还是被延期了。

(4)当运用Word或者Excel作为缺陷管理工具时,可能会给Bug各类指标数的统计(特别是以图表形式统计)带来问题,很难看出一个Bug对应的测试需求。

(5)假如出现一些不可重现的Bug按照规定也需要进行记录,这些不可重现的Bug在整个项目中的状态难以定义。(不能算作已经解决的Bug,同时Bug由于不能重现使得开发人员修复起来有困难)

软件测试的主要目的在于发现软件存在的问题(Bug)。如何处理测试中发现的错误,将直接影响到测试的效果。只有正确、迅速、准确地处理这些错误,才能消除软件错误,保证要发布的软件符合需求设计的目标。而有以上5点的存在,会使Bug的处理效率和Bug处理的验证会有偏差,对项目是否成功还是比较显著的。

2 软件错误的状态以及软件错误管理流程

对于软件各项错误的状态,软件业巨头微软公司对于软件错误的状态有如下5种:

New:代表此Bug由测试人员发现并且进行提交。

Open:Bug被正式确认并且分发给开发人员。

Fixed:开发人员完成Bug漏洞修复并且提交给测试人员进行验证测试。

Decline:开发人员拒绝修改错误(代表Bug开发人员和测试人员对需求等非程序方面有歧义需要额外沟通)。

Deferred:Bug在本版本的程序中暂缓修复,在下一个版本中修复。(一般是Bug严重等级比较低的项目)

Closed:测试人员最终验证通过,此Bug被最终修复,并由测试人员关闭此Bug。

一般是由测试人员新建Bug记录后,Bug记录被正式派分到开发人员处,若开发人员对此Bug有歧义就可以拒绝这条Bug的修改并且与测试人员讨论这条Bug的有效性。若此Bug的确需要修正,则由开发人员进行修正后置软件的错误问题状态为解决。

当测试人员接到相关通知后,测试人员接到相关通知后进行回归测试后若没有问题,则可以关闭这条Bug记录。

在实际情况中,觉得开源软件BugFree与软件错误状态理论较为符合,也能解决版本控制问题,现把安装过程和使用情况进行分享。

3 BugFree安装过程

(1)BugFree采用的是PHP+Apache+MySQL后台,而Apache使用的是和IIS一样的80端口,所以安装的机器上有IIS的话,请先修改IIS默认端口,修改方法如下:

开始菜单——>控制面板——>管理工具——>Internet信息服务,界面如图1所示。

图1 BugFree的界面

从图1中可以看到,已经将TCP端口改为了90。

① 同样的,一些下载软件会占用80端口,需要将这些软件的进程进行关闭。

② 下载GreenAmp服务器软件套件(版本号为050123)。

③ 将GreenAmp套件解压后直接运行启动GreenAMP.bat。

④ 在IE浏览器中输入http:∥localhost/phpmyadmin,输入用户名root,密码为空。若出现欢迎使用PHPMyAdmin,则代表安装正确。

⑤ 下载BugFree文件后解压到GreenAMP中的WWW文件夹下,再次在浏览器中输入http:∥localhost/BugFree,接着直接点击创建数据库超链接后,再次将Include文件夹下的Config.inc.Sample.php进行复制后更名为Config.inc.php,BugFree即可安装成功。

4 BugFree使用过程

(1)首先用Admin账号登入添加项目和项目人员,用Admin账号添加项目界面如图2所示。可以新增一个名为Price的项目。

(2)然后可以新增一个Bug,如图3所示。

在下图3中可以维护Bug类型(包括新增需求、代码错误、性能压力等类型),创建Build中(可以填入发现Bug的日期,内部程序版本等内容)。这样当测试人员将某一个特定版本的Bug提交给开发人员后,开发人员可以针对这个特定版本的程序进行修复,从而不会引起程序开发版本的混乱。

(3)开发人员进行程序修改并且点击解决按钮后,就可以解决掉这个Bug,解决方案有如下几种:

① By Design(无效的Bug);

② Duplicate(已经被别人发现的重复的Bug);

③ External(外部因素造成的Bug,可能为IE6下功能正确,而IE8中就可能无法运行);

④ Fixed(Bug被正确地修正了);

⑤ Not Repro(无法复现Bug,可能为无效的Bug);

⑥ Postponed和Won't fix都为由于Bug紧急程度比较低,推迟到以后再修复此Bug,相当于5种类型中的Deferred。

(4)当开发人员完成保存后,测试人员进行回归测试后并且没有再发现新的Bug的话,就可以关闭这个Bug,同时系统会记录Bug开放的人员、时间,开发人员处理的人员、时间,Bug关闭的人员、时间等信息。

(5)还有一些报表功能,如某一个项目包含的Bug统计数、Bug被指派人的统计数、Bug类型的统计数、Bug操作系统的统计数,这样就可以对这些统计数进行分析后得到项目的实际Bug情况。

5 结语

通过在实际工作过程中参与的各个IT项目过程中,深刻地理解到当测试项目非常庞大(如涉及到采购、财务、物流内容的ERP项目或者对最终金额精度要求非常高的转制报价项目),由于这些项目可能有几十甚至上百个需求,一个测试需求可能需要3到4个测试样例,这样就会导致整个项目有几百个测试样例。假如没有比较好的软件缺陷工具进行管理,可能会出现测试样例不能覆盖到相关需求、不能正确地统计出实际发现的Bug数量以及等问题。综上所述:选择一个合理并且方便的缺陷管理工具对于软件系统成功是十分重要和迫切的。

猜你喜欢

样例测试人员管理工具
移动应用众包测试人员信誉度复合计算模型研究
样例呈现方式对概念训练类别表征的影响
精益管理工具在手术室耗材管理中的应用
质量管理工具在减少CT停机天数中的应用
“样例教学”在小学高年级数学中的应用
高校分析测试中心测试队伍建设方案初探
浅析软件测试中的心理学应用
hosts文件管理工具
现代企业与管理工具的运用
基于样例学习研究的几点展望