摘要 在项目中,测试人员考核往往成为项目经理和测试经理的一个难题,怎样评估测试人员的工作?怎样定义测试质量的差别?本文通过从事测试工作多年中对不同项目的数据收集和网上有限资料的参考分析,思考总结出一套可行的方法,在此提供给大家。
正文
长期以来,如何考核测试人员的工作是富有争论的话题, 一个理想化的方法是收集测试阶段之后项目阶段的缺陷来确定系统测试的质量。但是,这种方法的不可操作性在于:一是维护和实施阶段的缺陷难于收集;二是缺陷贯穿产品的整个使用周期,无法穷尽,难于将时间段分割开来比较;三是成本过于庞大,时间跨度过长,起不到有效激励的作用。能不能就在项目过程中寻找可以评价测试人员工作的方法呢?就这这个思路,本人摸索出一套有效的办法。
首先声明的是,第一,这套考核方发在一个功能点估算超过 10000 个的项目中经过实践,但是对于小项目而言,可能缺少足够的数据和必要性;第二,项目组内考核的成功不能意味着在测试部门内可以采用类似的考核方法,仅提供一种参考方法,部门考核可能更多考虑投入工程的工作量大小和任务分配重要性;第三,除了量化指标外,测试人员工作态度、工作能动性和技术学习意愿要通过定性分析来得到。
项目组测试人员考核主要包括工作效率和工作质量两大块,工作效率用于考察活动,而工作质量用于考察产出物质量。由于考核基于测试过程进行,因此必须在过程结束之后才能进行。当然,由于工程是分布提交测试的,每月可以根据实际情况进行月考核,工程结束后或任务结束后在统一考核。按照传统测试周期,测试过程分为:测试计划、测试设计和测试执行三个方面进行。测试计划属于测试经理的范畴,在最后讨论。测试人员主要是测试设计和测试执行,测试经理的考核可包含在测试人员的考核内,当然,这部分考核也可以纳入项目组中进行。考核指标如下:
一 测试设计
工作效率相关指标
文档产出率 这项指标值主要为测试用例文档页数除于编写文档的有效时间获得。用于考察测试人员测试用例文档的生产率大小。
公式:∑测试用例文档页数(页) / ∑编写测试用例文档有效时间(小时)
参考指标:根据项目汇总得出平均在 1.14 页 / 小时左右,高于此值为优,低于此值为差。
用例产出率 这项指标值主要为上述指标值的补充,用于考察测试人员测试用例产出率大小。测试文档页数可能包含的冗余信息较多,因此要查看文档中测试用例的多少。方法是测试用例文档中测试用例编号总和数除于编写文档的有效时间。
公式:∑测试用例数(个) / ∑编写测试用例文档有效时间(小时)
参考指标:平均 4.21 个用例 / 小时
工作质量相关指标
需求覆盖率 计算测试用例总数之和除于与之一一对应的功能点数之和,主要查看是否有功能点遗漏测试的情况。
公式:∑测试用例数(个) / ∑功能点(个)
参考指标: 100 %。如果连功能指标都不能满足 100 %覆盖,起码说明测试不充分。这个指标收集起来相当困难,如果存在需求跟踪矩阵或者测试管理工具能把用例与需求一一对应就容易得多。
注意:有的功能是难于测试的,那么未能覆盖到的需求要综合分析,明确是测试人员遗漏?还是无法测试?这需要放入问题跟踪表中进行后续跟踪;另外,有的功能点包含的信息较多或者有的用例包含几个功能点,这时只能把重复的功能点或重复用例按一个计,难于区分的要做说明。
文档质量 测试用例进行评审和同行评审发现的缺陷数,或者将此缺陷数除于文档页数算出比率。此指标考察测试人员文档编写的质量如何。
公式:∑缺陷数(评审和同行评审)(个)
∑缺陷数(评审和同行评审)(个) / ∑测试用例文档页数(页)
参考指标:由于评审是发现的缺陷数是不固定的,因此,这个指标没有可供参考的数值。如果缺陷数大小不能直接用于比较就使用缺陷 / 页方式进行横向对比。
文档有效率 使用测试用例文档进行测试时发现的系统测试缺陷数除于此文档页数。用于考察文档是由有效的指导了测试工作。
公式:∑缺陷数(系统测试)(个) / ∑测试用例文档页数(页)
参考指标:平均 2.18 个缺陷 / 页
注意:如果存在测试人员在测试时创建新文档用于辅助测试时应包含这一部分。
用例有效率 使用测试用例发现的全部缺陷除于测试用例数总和。这一指标是上一指标的补充指标,用于考察用例质量是否较高
公式:∑缺陷数(系统测试)(个) / ∑测试用例数(个)
参考指标:平均 0.59 个缺陷 / 用例,也就是说,每执行两个用例才得到 1 个缺陷,各工程有所不同,可以自己实践一下
二 测试执行
工作效率相关指标
执行效率 利用测试用例文档页数除于此次系统测试执行的时间总和(不包含用例文档编写时间)。补充指标方法是用例的个数除于此次系统测试的时间总和。用于获得工作中测试人员每小时执行测试的速度。
公式:∑测试用例文档页数(页) / ∑执行系统测试的有效时间(小时)
∑测试用例数(个) / ∑执行系统测试的有效时间(小时)
参考指标:平均 0.53 页 / 小时, 1.95 个用例 / 小时。即测试人员每小时执行半页测试用例或者每小时执行 2 个测试用例。通过横向比较,容易知道那位成员的执行效率较高。注意:执行效率高的不代表测试质量也高,甚至执行效率和测试质量成反比,所以后面工作质量的指标会补充这一部分的偏离。实际结果表明,用例执行效率高的成员,其缺陷发现率往往偏低,考核如果不将此纳入进来也可以将其作为测试改进的一项重要数据进行收集。
进度偏离度 检查计划时间和实际时间的进度,方法是计划时间差额减去实际时间差额除于实际工时总和,用于考察测试人员进度情况,监控测试是否按照日程进行,是否满足了工程的进度要求。
公式:∑(计划开始时间 - 实际开始时间)+∑(计划结束时间 - 实际结束时间) / 总工时
参考指标: 15 % 进度偏离是个相对的指标,可能偏离了 20 个工作日,但是对于一个长达半年时间的测试而言偏离天数比上整体测试所需天数不足 15 %,可能偏离了 3 个工作日,但是对于一个只有 1 星期时间的测试已经超过了整个测试阶段所需天数的 60 %。
注意:计算时分子分母要保持一致,即开始或结束时间已经去除了非工作日时间,则总工时也要去除非工作日时间。因为制定计划时是根据每个公司的工作日来制定的,也就是说,考虑了非正常工作日的日程。
现在ArthurXF本人正在搞PHP等技术培训,如果想学习的人可以跟我联系。另外培训的招生简章在这个网址,想了解的可以去看看。也可以联系我QQ:29011218。
PHP培训招生简章
正文
长期以来,如何考核测试人员的工作是富有争论的话题, 一个理想化的方法是收集测试阶段之后项目阶段的缺陷来确定系统测试的质量。但是,这种方法的不可操作性在于:一是维护和实施阶段的缺陷难于收集;二是缺陷贯穿产品的整个使用周期,无法穷尽,难于将时间段分割开来比较;三是成本过于庞大,时间跨度过长,起不到有效激励的作用。能不能就在项目过程中寻找可以评价测试人员工作的方法呢?就这这个思路,本人摸索出一套有效的办法。
首先声明的是,第一,这套考核方发在一个功能点估算超过 10000 个的项目中经过实践,但是对于小项目而言,可能缺少足够的数据和必要性;第二,项目组内考核的成功不能意味着在测试部门内可以采用类似的考核方法,仅提供一种参考方法,部门考核可能更多考虑投入工程的工作量大小和任务分配重要性;第三,除了量化指标外,测试人员工作态度、工作能动性和技术学习意愿要通过定性分析来得到。
项目组测试人员考核主要包括工作效率和工作质量两大块,工作效率用于考察活动,而工作质量用于考察产出物质量。由于考核基于测试过程进行,因此必须在过程结束之后才能进行。当然,由于工程是分布提交测试的,每月可以根据实际情况进行月考核,工程结束后或任务结束后在统一考核。按照传统测试周期,测试过程分为:测试计划、测试设计和测试执行三个方面进行。测试计划属于测试经理的范畴,在最后讨论。测试人员主要是测试设计和测试执行,测试经理的考核可包含在测试人员的考核内,当然,这部分考核也可以纳入项目组中进行。考核指标如下:
一 测试设计
工作效率相关指标
文档产出率 这项指标值主要为测试用例文档页数除于编写文档的有效时间获得。用于考察测试人员测试用例文档的生产率大小。
公式:∑测试用例文档页数(页) / ∑编写测试用例文档有效时间(小时)
参考指标:根据项目汇总得出平均在 1.14 页 / 小时左右,高于此值为优,低于此值为差。
用例产出率 这项指标值主要为上述指标值的补充,用于考察测试人员测试用例产出率大小。测试文档页数可能包含的冗余信息较多,因此要查看文档中测试用例的多少。方法是测试用例文档中测试用例编号总和数除于编写文档的有效时间。
公式:∑测试用例数(个) / ∑编写测试用例文档有效时间(小时)
参考指标:平均 4.21 个用例 / 小时
工作质量相关指标
需求覆盖率 计算测试用例总数之和除于与之一一对应的功能点数之和,主要查看是否有功能点遗漏测试的情况。
公式:∑测试用例数(个) / ∑功能点(个)
参考指标: 100 %。如果连功能指标都不能满足 100 %覆盖,起码说明测试不充分。这个指标收集起来相当困难,如果存在需求跟踪矩阵或者测试管理工具能把用例与需求一一对应就容易得多。
注意:有的功能是难于测试的,那么未能覆盖到的需求要综合分析,明确是测试人员遗漏?还是无法测试?这需要放入问题跟踪表中进行后续跟踪;另外,有的功能点包含的信息较多或者有的用例包含几个功能点,这时只能把重复的功能点或重复用例按一个计,难于区分的要做说明。
文档质量 测试用例进行评审和同行评审发现的缺陷数,或者将此缺陷数除于文档页数算出比率。此指标考察测试人员文档编写的质量如何。
公式:∑缺陷数(评审和同行评审)(个)
∑缺陷数(评审和同行评审)(个) / ∑测试用例文档页数(页)
参考指标:由于评审是发现的缺陷数是不固定的,因此,这个指标没有可供参考的数值。如果缺陷数大小不能直接用于比较就使用缺陷 / 页方式进行横向对比。
文档有效率 使用测试用例文档进行测试时发现的系统测试缺陷数除于此文档页数。用于考察文档是由有效的指导了测试工作。
公式:∑缺陷数(系统测试)(个) / ∑测试用例文档页数(页)
参考指标:平均 2.18 个缺陷 / 页
注意:如果存在测试人员在测试时创建新文档用于辅助测试时应包含这一部分。
用例有效率 使用测试用例发现的全部缺陷除于测试用例数总和。这一指标是上一指标的补充指标,用于考察用例质量是否较高
公式:∑缺陷数(系统测试)(个) / ∑测试用例数(个)
参考指标:平均 0.59 个缺陷 / 用例,也就是说,每执行两个用例才得到 1 个缺陷,各工程有所不同,可以自己实践一下
二 测试执行
工作效率相关指标
执行效率 利用测试用例文档页数除于此次系统测试执行的时间总和(不包含用例文档编写时间)。补充指标方法是用例的个数除于此次系统测试的时间总和。用于获得工作中测试人员每小时执行测试的速度。
公式:∑测试用例文档页数(页) / ∑执行系统测试的有效时间(小时)
∑测试用例数(个) / ∑执行系统测试的有效时间(小时)
参考指标:平均 0.53 页 / 小时, 1.95 个用例 / 小时。即测试人员每小时执行半页测试用例或者每小时执行 2 个测试用例。通过横向比较,容易知道那位成员的执行效率较高。注意:执行效率高的不代表测试质量也高,甚至执行效率和测试质量成反比,所以后面工作质量的指标会补充这一部分的偏离。实际结果表明,用例执行效率高的成员,其缺陷发现率往往偏低,考核如果不将此纳入进来也可以将其作为测试改进的一项重要数据进行收集。
进度偏离度 检查计划时间和实际时间的进度,方法是计划时间差额减去实际时间差额除于实际工时总和,用于考察测试人员进度情况,监控测试是否按照日程进行,是否满足了工程的进度要求。
公式:∑(计划开始时间 - 实际开始时间)+∑(计划结束时间 - 实际结束时间) / 总工时
参考指标: 15 % 进度偏离是个相对的指标,可能偏离了 20 个工作日,但是对于一个长达半年时间的测试而言偏离天数比上整体测试所需天数不足 15 %,可能偏离了 3 个工作日,但是对于一个只有 1 星期时间的测试已经超过了整个测试阶段所需天数的 60 %。
注意:计算时分子分母要保持一致,即开始或结束时间已经去除了非工作日时间,则总工时也要去除非工作日时间。因为制定计划时是根据每个公司的工作日来制定的,也就是说,考虑了非正常工作日的日程。
现在ArthurXF本人正在搞PHP等技术培训,如果想学习的人可以跟我联系。另外培训的招生简章在这个网址,想了解的可以去看看。也可以联系我QQ:29011218。
PHP培训招生简章