一种支持自动化测试的测试管理工具的实现(3)

发表于:2011-10-20来源:未知作者:领测软件测试网采编点击数: 标签:测试管理
4.3 DTD的功能与组成 DTD的功能与组成如图3所示。 图3 缺陷跟踪系统模块组成图 各模块详细说明如下: ●报告模块。用于软件 测试人员 向数据库报告新的

  4.3 DTD的功能与组成

  DTD的功能与组成如图3所示。

  图3 缺陷跟踪系统模块组成图

  各模块详细说明如下:

  ●报告模块。用于软件测试人员向数据库报告新的缺陷。

  ●权限控制模块。为测试人员、开发人员和项目管理人员分配不同的权限,如浏览、报告、修改、查询、统计、分析、删除、备份等。

  ●分析模块。统计和分析满足条件的缺陷,输入分析结果;分析结果可以存成文件,可以包括数据、文字、表格和统计图形等内容。

  ●备份模块。备份当前缺陷跟踪数据库的缺陷;全部备份或者备份满足条件的缺陷。

  ●查询模块。根据查询条件,查找满足条件的缺陷;包括简单条件查询和复杂条件查询。

  ●修改模块。用于开发人员和测试人员更新缺陷状态信息;开发人员验证报告的缺陷,修改缺陷,更新修改缺陷的信息;测试人员补充缺陷内容,验证和关闭修正的缺陷。

  5 缺陷跟踪数据库的缺陷管理

  缺陷跟踪数据库(DTD)是一种可以提高缺陷处理效率的工具,要充分发挥它的作用,需要对缺陷跟踪数据库进行有效的管理[3] 。

  5.1 角色和权限划分

  使用DTD的用户有多种类型,而且他们使用的目的关注的内容也各不相同,为更有效地对DTD中每个缺陷进行正确处理,保证缺陷处理的客观性和安全性,我们对不同的使用者分配不同的缺陷处理权限。

  默认情况下,数据库有四个组,测试组、质量保证组、修正缺陷组、项目管理组。可以根据需要随时添加和减少这些组的成员。

  各组对应权限如表5所示。专有权限是本组成员才有的权限,公共权限是每个使用缺陷数据库的人员都有的权限。

  表5

  5.2 缺陷数据分析和显示

  本系统具有较为强大的数据统计分析能力,以基于缺陷跟踪数据库的bug信息作为分析的数据来源,以表格和图形的形式表现缺陷的分布情况,并且可以选择统计和分析的频率(每周或者每天)。目前实现的有如下三种。

  (1)测试团队每天报告的新缺陷统计和分析。

  (2)不同测试人员的缺陷数量统计。

  (3)缺陷严重级别和缺陷类别统计与分析。

  由于我们采用的是中心数据库的体系结构,当需要以别的方式体现缺陷的分布情况时只需要更改图的表示层就可以,而逻辑和数据库层无需更改。

  6 自动化测试支持系统

  自动化测试是管理和实施各种测试活动的一种方法,即测试用例的设计,测试脚本的开发和执行,并借助自动化工具来验证测试需求[4]。而缺陷回归是我们软件开发和缺陷管理中的主要问题,也是测试中不可避免的话题。对现有功能更新的同时,也影响原有的行为,这是造成bug的主要原因,避免这一问题的主要解决方法是构建自动化的测试,实现回归测试。

  回归测试我们可以采用商业工具、开源工具和自己开发,考虑到开发周期和与本系统的兼容,我们在多种选择方案中选择了在ATMS中内嵌开源自动化测试工具CPPUNIT[5]的方法来支持自动化测试,由于CPPUNIT是个开放源代码的工具,这使得我们可以通过修改其源代码使之符合我们的需要,在本系统中,当每次CPPUNIT自动化测试完成之后,我们加入引导,把相应的运行结果写入ATMS指定的中心数据库中,同时指示ATMS有新的数据更新。这样由于ATMS和CPPUNIT共用相同的中心数据库,能够达成数据上的一致性,并完成所需交互。其数据流如图4所示。

  图4

  从图4可以看出,当做自动化测试的人员拿到需要自动化的用例的文本描述后,将其按照CPPUNIT的规范写成可以在CPPUNIT框架下运行的用例代码。然后和需要的用例数据一起通过CPPUNIT自动运行,结果自己写到系统的中心数据库,这样,别的模块就能任意查询所需结果。

  7 结束语

  随着我国软件业的发展和各公司测试管理过程的进一步完善,作为软件质量保证的重要组成的软件测试也越来越受到重视,如何在软件开发项目中有序地管理和分析各种问题对质量控制和过程改进也将越来越重要。本系统支持缺陷驱动的测试过程,但是对自动化的支持还比较肤浅,只是在现有CPPUNIT的基础上做了一些整合,这个是以后需要改进的地方。我们也相信,由于软件自动化测试能显著提高软件测试的有效性和效率,将在越来越多的软件测试管理工具中得到支持。

  参考文献

  [1] Ron Patton 著.软件测试.周予槟,姚静等译.机械工业出版社,2002

  [2]崔启亮著.国际化软件测试.电子工业出版社 2006.4

  [3]孙建.软件测试工具的研究与建立.浙江大学,2006

  [4]Sam Guckenheimer. The Revolution in Software Testing. Rational Software. 2002

  [5]James Newkirk Robot C. Martin. Extreme Programming in practice中文版.人民邮电出版,2002年6月出版

原文转自:http://www.ltesting.net