前言项目管理者联盟
随着时代的发展,软件规模越来越大,复杂程度越来越高,对测试工作也提出了更高的要求,测试领域也随之涌现出了各种各种的理论、方法和工具。这其中很重要的一个分支便是测试管理工具,它主要解决的是测试过程中团队协作的问题,比如缺陷管理、用例管理、测试任务管理等。项目管理者联盟
目前市面上比较流行的测试管理工具有QC、Mantis、BugZilla、TestLink、Trac、Redmine、 BugFree等。有开源软件,也有商业软件。这些软件的各自侧重点不同:比如Mantis, BugZilla偏重缺陷管理,TestLink则偏着测试用例管理,QC则更加全面,Trac和Redmine项目管理的概念又更强一些。 我们在总结分析这些软件的优缺点基础上,结合自己日常实际工作的需要,设计了一套测试管理软件,这篇文章就是在设计这款软件过程中的总结和思考,希望可以 给大家一些启发。项目管理者联盟
在设计的过程中,我们确立的目标是在一套软件里面可以实现测试全过程的管理。那么,哪些功能是在这个管理过程中必不可少的呢?经过激烈的讨论和不断的修正,我们整理总结出以下九大功能,它们分别是:测试需求管理、测试用例管理、测试套件管理、测试版本管理、测试计划管理、测试执行管理、缺陷管理、发布管理和分析报表。下面笔者就这些功能一一阐述。项目管理者联盟
一、测试需求管理项目管理者联盟
需求是一款软件产品的灵魂,是开发和测试最重要的参照标准。很难想象一个没有需求的软件如何去设计它的测试用例。无论是测试用例,还是缺陷,都是建立在特定的需求基础之上的。因此,一款好的测试管理软件首先具备的便是测试需求管理。项目管理者联盟
1.1 需求拆分项目管理者联盟
传统的项目管理流程中,需求往往以需求规模说明书的形式呈现。需求规格说明书比较全面,但缺点是没有拆分为需求点,无法实现对某一个具体的功能点的跟踪。因此在我们设计的测试管理工具中,需求是以需求功能点的形式呈现。这样有利于针对每一个功能点撰写测试用例,并进行测试的跟踪管理。项目管理者联盟
大模块拆成小需求,小需求拆成需求点,拆分之后,一层层的分级管理便是必不可少的了。为了适应日益复杂的需求和变化响应,需求的模块还需要实现无限级的划分,这样可以形成一颗树状结构,无论从浏览还是管理上都更为灵活和方便。项目管理者联盟
项目管理者联盟
1.2 需求管理club.mypm.net
有了模块之后,紧接着需要实现的便是测试需求的管理。我们需要一个界面来录入需求,常见的字段包括:标题、描述、优先级等。另外也可以对需求进行修改,删除等操作。项目管理论坛
项目管理者联盟
1.3 需求搜索bbs.mypm.net
实现了基本的需求维护功能之后,我们还需要实现需求的搜索功能,这样方便我们找到自己想要的需求。PgMp.mypm.net
项目管理者联盟
二、测试用例管理转自项目管理者联盟
好,我们现在有了测试需求,我们就可以为每一个需求撰写测试用例了。测试用例的维护涉及到模块划分、测试用例维护、导入导出和搜索等功能。项目管理者联盟
2.1用例模块划分PgMp.mypm.net
类似于需求的模块维护,用例也需要通过模块的划分来维护用例。在我们设计的软件中,测试用例的模块和需求的模块式分开的。读者肯定会问,为什么还要为用力维护一套模板呢?为什么不重用需求的模块划分呢?这是因为在实际项目中,需求是从用户和产品的角度来看,需求更多的是帮助用户如何达成一个操作,实现一个功能。但是用例设计不止要考虑需求,还需要考虑一些异常情况来设计用例,为用例单独开设模块管理就不会影响到原有的需求管理部分。service.mypm.net
2.2用例的维护项目管理者联盟
下面我们要实现的便是测试用例的基本添加,编辑等操作。这个功能在大多有测试用例管理的工具中都会实现,但需要特别说明的是,在绝大多数的管理工具中,测试用例的步骤是没有分开的,每一步的预期甚至也是混在一个字段中。其实这样并不可科学,不仅会降低用例执行的粒度,还会影响后续的一些数据生成,至于是生成什么样的数据,先在这里 卖个关子,后面解释:-)。在我们设计的系统中,用例的步骤和每步的预期是完全分开的。项目管理者联盟
项目管理者联盟
2.3 用例的导入导出项目管理者联盟
目前很多公司还是在使用Excel书写和保存测试用例,如果一家公司准备采用一套测试管理系统,将这些用例手工导入将是一项繁重的工作。 因此测试管理工具需要能够将Excel里面的用例导入到系统,同样,也能够将测试用例导出为Excel格式的文件。项目管理者联盟
|