软件测试作为软件生命周期中不可或缺的重要环节,正在受到越来越多的重视。然而,在实际项目测试工作中却存在一个突出的问题,就是测试工作量的统计问题。如何统计更科学、更准确,本文作者在实际工作中进行了摸索和尝试。
虽然,目前测试工作越来越受到企业的重视,已形成规模,参与测试工作的人越来越多,投入也越来越大。但与之不协调的是没有一个配套的、较为合理的工作量统计方法。原有的测试工作量计算方法,一般是把测试人员进入项目的时间与进入项目的人员数量相乘,得到项目测试的工作量。该计算方法由于计算方便,容易操作,深受众多项目的推崇。
但是,随着测试在项目的重要性的加深,测试工作分工日益细化,测试资源强调有效重用,测试团队协作越来越强,使用这种方法已经不能满足测试工作量计算的需要了:上级领导不了解整个测试团队资源的使用情况;测试团队负责人难于对项目测试任务实际执行过程产生的工作量、成本进行跟踪;项目组在考核绩效时,遗漏了部分测试人员的工作量。
所以,在项目测试领域急需一种新的工作量统计方法。笔者将这方面的一些实践进行了总结,供读者朋友参考。
其基本思路如下:首先就任务类型的设置要达成一致;其次从每日的工作量收集开始,将测试任务按照一定的类别进行分类;然后将工作量数据按照不同的需求进行统计,得出不同的统计表;最后对这些统计表的数据进行分析,得出相应的结论。
设置任务类型
设置任务类型,是每日工作量数据录入的前提。任务类型需要在整个测试团队内达成一致,这样大家有了相同的标准,得出的数据才具有统计的意义。本文以某公司的项目测试为例进行介绍,其任务类型如表1所示。
这里提到的测试任务类型,在实践中会根据项目实际需要进行调整。例如,新增“测试工具学习”任务类型等。
另外,在表1所示的任务类型中,有一项比较灵活的任务类型——沟通。有的团队认为沟通都是有目的、有目标的,是一个为完成具体测试任务所进行的中间活动,所以他们把沟通作为具体测试任务的一部分。也就是说,对于这样的团队,他们没有“沟通”这个任务类型。有的团队则认为将沟通的内容很难划清界限,为避免测试人员填写工作量时发生混淆,所以,将“沟通”作为独立的任务类型。笔者认为这属于任务类型定义问题,测试团队可以根据已经存在的约定俗成进行设置,只要在整个团队内达成一致就可以的。
表1 测试任务类型分类
记录工作量基础数据
这项工作由团队成员根据当天的工作任务完成情况进行记录。它是后续工作量统计的基础,所以要保证这项基础数据收集的准确性,切不可应付了事,最好能在当天下班前填写好当天工作量分配情况。
坚持记录时间需要很强的自我约束能力,所以每天填写工作量记录需要一定的坚持力。在填写工作量记录时,需要为每个任务选择相应的任务类型,填写工作任务持续时间。工作任务持续时间最好不超过4个小时,这是为了避免填写的任务过粗,不利于发现工作过程中的问题。
及时记录、数据准确,是这个环节工作的原则。本例中某公司使用的工作量记录表格如表2所示。