本系统具有较为强大的数据统计分析能力,以基于缺陷跟踪数据库的bug信息作为分析的数据来源,以表格和图形的形式表现缺陷的分布情况,并且可以选择统计和分析的频率(每周或者每天)。目前实现的有如下三种。
(1)测试团队每天报告的新缺陷统计和分析。
(2)不同测试人员的缺陷数量统计。
(3)缺陷严重级别和缺陷类别统计与分析。
由于我们采用的是中心数据库的体系结构,当需要以别的方式体现缺陷的分布情况时只需要更改图的表示层就可以,而逻辑和数据库层无需更改。
6 自动化测试支持系统
自动化测试是管理和实施各种测试活动的一种方法,即测试用例的设计,测试脚本的开发和执行,并借助自动化工具来验证测试需求[4]。而缺陷回归是我们软件开发和缺陷管理中的主要问题,也是测试中不可避免的话题。对现有功能更新的同时,也影响原有的行为,这是造成bug的主要原因,避免这一问题的主要解决方法是构建自动化的测试,实现回归测试。
回归测试我们可以采用商业工具、开源工具和自己开发,考虑到开发周期和与本系统的兼容,我们在多种选择方案中选择了在ATMS中内嵌开源自动化测试工具CPPUNIT[5]的方法来支持自动化测试,由于CPPUNIT是个开放源代码的工具,这使得我们可以通过修改其源代码使之符合我们的需要,在本系统中,当每次CPPUNIT自动化测试完成之后,我们加入引导,把相应的运行结果写入ATMS指定的中心数据库中,同时指示ATMS有新的数据更新。这样由于ATMS和CPPUNIT共用相同的中心数据库,能够达成数据上的一致性,并完成所需交互。其数据流如图4所示。
图4
从图4可以看出,当做自动化测试的人员拿到需要自动化的用例的文本描述后,将其按照CPPUNIT的规范写成可以在CPPUNIT框架下运行的用例代码。然后和需要的用例数据一起通过CPPUNIT自动运行,结果自己写到系统的中心数据库,这样,别的模块就能任意查询所需结果。
7 结束语
随着我国软件业的发展和各公司测试管理过程的进一步完善,作为软件质量保证的重要组成的软件测试也越来越受到重视,如何在软件开发项目中有序地管理和分析各种问题对质量控制和过程改进也将越来越重要。本系统支持缺陷驱动的测试过程,但是对自动化的支持还比较肤浅,只是在现有CPPUNIT的基础上做了一些整合,这个是以后需要改进的地方。我们也相信,由于软件自动化测试能显著提高软件测试的有效性和效率,将在越来越多的软件测试管理工具中得到支持。
文章来源于领测软件测试网 https://www.ltesting.net/