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

发表于:2010-12-07 11:33

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:甘泽洲    来源:51Testing软件测试网采编

  摘  要:软件测试管理是为了使软件测试项目能够按照预定的成本、进度、质量顺利完成而对成本、人员、进度、质量、过程和风险等进行分析和管理的活动。测试管理关注人员、过程、产品三要素的互动和变化,测试过程和阶段的相互作用,测试与开发团队的相互关联与协调配合,为使这些过程能有序的进行,开发出适合自己项目组的测试管理工具是必需的,同时由于自动化测试的普及,如何将自动化测试融入进来也是一个挑战。本文描述了我们项目组开发的支持自动化测试的测试管理工具的结构和功能实现。

  关键字:自动化测试;测试管理;软件测试

  1  引言

  为了保证软件产品的质量,需要对软件过程进行控制,同时也需要对软件产品本身进行检测,在目前形式化方法和程序正确性证明还无望成为使用性方法的情况下,软件测试在将来的相当长一段时间仍然将是软件质量保证的有效方法[1]。

  软件测试管理就是通过一定的管理方法和工具来对整个软件测试过程进行监控,从而提高软件测试的绩效。由于软件测试管理的复杂性,没有特别的辅助工具,只是依靠人工处理是很麻烦甚至是不现实的。

  对于测试工具的选择一般来说有自己开发、商业工具和开源工具三种选择。第三方工具包括已经成熟的商业软件和开放源代码的开源工具,它们都是经过证明的可以放心使用的工具,但是最主要的不足之处在于它们往往为了通用的考虑,按照自己的理解标准化了流程,并且价格不菲。但是对刚起步的中小企业来说,购买和使用这样的通用工具而只使用到其中一小部分功能,甚至有些有自己项目组特色的东西还得不到支持,往往不是最合理的选择。

  随着近些年测试自动化的呼声越来越高,如何将自动化测试的效率提高到应有的水平,成了各个测试机构首要考虑的问题[2]。我们认为,先进的测试管理流程与一流的自动化测试工具包是实施自动化测试不可或缺的。为更好的对测试流程进行控制,使之能充分利用自动化测试带来的好处,现代测试管理系统应该能支持自动化测试。

  结合公司的实际情况,我们选择了自己开发和开放源代码相结合的方式,并采用缺陷跟踪驱动测试的模型开发出了自动化测试管理系统ATMS(Automatic Testing and Management System)来作为支持自动化测试的基础设施。

  本文分析了ATMS的体系结构和各部分组成,并对其中一些关键技术进行了讨论。

  2  体系结构

  现在基于源代码的软件测试工具已经开始被业界广泛使用,以求提高软件的可重用性,可维护性等质量属性,由于本项目组的软件自动化测试才刚起步,ATMS应该能和以后可预期的测试过程的进一步完善和需求的变更同步,这样,ATMS在设计之初就应该有良好的可扩展性和可重复性。

  ATMS在逻辑上采用了以中心数据库为核心的体系结构,ATMS目前分为测试文档管理系统、缺陷跟踪管理和自动化测试支持系统三大部分(体系结构图如图1所示),为了降低它们之间的耦合性,它们都通过共同的中心数据库进行交互,以后要进行扩展的话只需要围绕中心数据库进行操作即可。

图1

  3  测试文档管理系统

  软件测试文档是指导和管理软件测试过程的重要依据,测试文档包括测试计划、测试进度、测试用例、缺陷管理文档、进度报告等。这里介绍ATMS中我们主要分为测试用例管理和测试文档管理(包括测试计划,测试进度等测试文件的模板)。

  3.1  测试用例组成

  ATMS中用例分为三个部分,用例逻辑、用例数据和用例代码。其中用例逻辑和用例数据是文本格式,由用例管理系统负责创建;用例代码由自动化支持系统在CPPUNIT中创建,它是自动化运行的基础。它们的关系如图2所示。

图2
51/512345>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号