对于如何衡量测试效率,如何提高测试效率
如何衡量测试效率?
个人认为可以从软件测试的活动中的以下指标综合考评,去评估衡量测试效率,每项指标都高,自然能够说明一些问题:
1.发现缺陷的质量:
同一个项目组内,我们一般运用测试管理工具TD, 按优先级和严重等级,把每个人的缺陷做成柱状图和饼图,放到一个文档中,邮件发给大家,让组内成员了解自己的工作情况和其他人的工作情况。同时也让开发人员,对每个测试人员的工作,做出评估,供绩效考核时参考。特别是发现非常隐蔽缺陷的测试人员,一定要重赏。
2. 测试的有效性:
一般来说,递交Bug的有效性,体现了测试员是否能够正确理解系统,并发现问题,是否能够发现有效的问题。很多时候,测试人员没有弄准确需求,或者是没搞 清楚设计,一旦出现异常,就提交Bug。不是和前面的缺陷相同,重复递交相同类型的缺陷,就是递交无效的Bug,导致后来很多缺陷,都被项目评审时拒绝, 既耽误了时间,效率自然不高。
3.测试组员交叉测试,发现漏测问题数量:
经常是这样,一个测试人员测试结束,修复了全部的缺陷。这个时候,测试的模块和测试人员交叉一下,再测试,很有可能又发现很多问题。这样我们可以对测试发现问题数量,进行统计。这样做,就迫使测试人员认真执行每一轮测试,每次测试都不敢懈怠。
4.遗漏到客户缺陷的比例:
一旦版本测试通过,发布给客户以后,客户要对发布的版本进行验收测试。同样会发现一些问题,我们也会对测试过程中发现的Bug分配到每个模块和具体的人。 但是,如果缺陷在测试环境中不能重现,只能在实际工作环境中出现,则不属于遗漏给客户的Bug,不计入漏测统计里面。有时候,客户系统在使用中也会发现缺 陷,我们同样做好记录。
5.递交的缺陷数量:
在同一个项目组内,每天递交的Bug数量,每周递交的Bug数量,每个版本测试结束,总共递交的Bug数量。最终测试结束,算出每个人递交有效缺陷的百分比。
6.执行用例的数量:
同一天,每个测试人员,执行用例的数量。但是一定要去除那些不能够测试的功能模块,或者是被阻塞的模块,这些一定要考虑到。否则大家意见就大了呢!
7.编写测试文档的速度和质量:
每次编写测试用例时,大家都要编写部分模块的测试用例,我们也可以通过单位时间内编写case的数量、速度和质量,来区分每个人的效率,我觉得也是一种好方法。
8.评审发现问题的效率:
在组织部门内部的case评审时,同一个测试文档的评审,如果提出的修改建议比较多,并且很有参考价值。这样的测试人员,效率应该比较高,得考虑考虑加薪,呵呵。
9.测试工具使用的熟练程度:
当然,一个测试人员,对测试工具的熟练程度越高,使用技巧越强,一般来说,测试的效率就越高。按常理来说,每个人不可能了解全部的自动化测试工具,我们只 对常用的测试工具进行考核就可以了,还算人性化吧。并且后面懂得较多的同事,给组内成员集体培训,使大家迅速掌握测试工具的基本使用,这才是我们的真正目 的。
10.测试结果的分析水平:
对自动化的测试工具来说,特别是性能测试结束之后,我们要分析部分测试结果,如果你都不熟悉测试工具的分析,何谈效率呢?所以测试结果的分析水平,也可以作为衡量测试效率的一个指标。
如何提高测试效率?
1.首先要有一个合理的详细的测试计划:
没有详细的测试计划,测试部的每个成员都在那儿盲无目的测试,何谈提高测试效率?当然测试计划也不能够太细,太细了,编写测试计划同样浪费时间,做到时可而止。最好是测试任务尽量能细化到测试的功能和测试的case这个级别去监控进度,较为理想。
2.测试尽早介入项目详细了解项目的业务需求,做好测试的前期准备:
目前来说,可能大家都有类似的感受,接触到的大多数的项目,都是测试周期比较短,开发人员耽误了时间,为了不拖延项目进度,留给测试人员做测试的时间都非 常紧张。如果项目测试的前期了解业务需求、了解产品属性和准备测试数据不充分,往往测试效率很低,测试时间变长,测试效率急剧下降。
3.对测试项目前景充满信心,调整最佳心态,保持愉悦的工作心情:
一般来说,如果大家认为测试的项目没什么发展前景,当然测试也不会很卖命,测试效率不用说。如果某个测试人员碰到什么不顺心的事,当天的工作效率肯定比平 常低。所以,要保证测试效率,测试负责人要察言观色,及时找不开心的下属谈心,了解并帮忙消除部分员工的不良情绪,让员工有更好的心情投入到测试工作中 去。
4.提高测试接受的标准,减少测试版本送测次数:
大部分公司的开发人员都有一种惰性,一旦公司成了测试部,他们自己测试时,都不会那么认真,以为有了测试人员,就自己就解放了。很多时候都是调试编译通 过,实际上开发人员没有做完整的自测,就拿到测试部进行测试。如果测试部门有严格的测试接受标准,一旦发现有重大问题,立即拒绝测试,送回开发人员修改。 可以减少很多次反复测试,重复测试,明显提高了测试效率。
5.测试负责人认真做好测试文档的评审:
测试经理一定要认真做好测试用例的评审,尽量使用较少的测试用例,发现较多的Bug,无疑是最佳提高效率的一种方式。很多时候,经验较少的测试人员在设计 测试用例的时候,写了很多的测试用例,测试时几乎没有发现缺陷。还有一种:比如说等价类的测试,只要具备代表性就可以了,如果写了很多测试用例,执行了半 天,臃肿的测试用例,未发现任何问题,也很不值。这些主要是靠测试用例评审的时候,测试Leader去把握了。尽量做到在满足需求的情况下,精简测试用例 数量,提高测试覆盖率。很多时候,测试人员写好用例就自己测试,根本没人评审,有些地方理解有偏差,测试点没测试到,导致发给客户版本被退回,给公司也会 带来巨大经济损失。
6.加强项目组成员的相互沟通工作和项目信息收集工作:
测试工作是一项沟通要求比较高的工作,一般需要同项目经理、产品经理、开发人员、业务人员、客户沟通。很多时候,由于测试介入较晚,测试时间短,测试初期测试人员了解需求不及开发人员,为了迅速熟悉需求,需要项目组成员之间相互培训和沟通。
测试人员为了利于测试工作,平时也需要主动和开发团队沟通项目的进度、项目存在的问题、项目的需求变更等等情况。与团队成员沟通得越充分、对项目的信息收集和把握得越及时、越准确,我们的测试工作才可能做得越顺利,才可能提高测试效率。
7.积极配合开发人员工作,努力赢得开发人员的尊重和支持:
作为测试人员,我们绝不能消极等待或一味埋怨开发人员的不理解和不重视。我们首先需要正视自己、改进自己,通过自身的不断努力让开发人员,真正体会到测试 的价值。同时,也需要理解并配合开发人员的工作。只有这样,才能赢得开发人员的支持。互相配合、互相促进,项目成员之间形成良性循环,彼此感情加深了、配 合默契了、工作效率和工作质量也就自然提高了。
8.按照项目的大小不同,必要的情况下引入自动化测试工具:
是否引入自动化的测试工具,主要取决于测试的时间长短和测试的轮次。一般来说,测试周期较长、版本升级平凡和回归测试次数较多的项目,引用测试工具可以提 高测试效率。如果测试周期较短,本来测试周期只有两三个月,开发测试脚步就要花费大量时间,引入自动化测试工具,用的次数较少,结果得不丧失,劳民伤财, 呵呵!
9.测试部门内部成员的工作业绩数据化:
具体的做法如下:每天给每个人分配的任务非常具体,并且随时关注他们的进展情况,完成百分比,不断督促他们。并且,把每个人每天的工作成果(发现缺陷的数 量和工作的质量)数据化,通过邮件的形式发给组内的成员,让大家有个比较。大家都有自尊心,看到自己落后,后面就加油赶工,形成一种良好的测试氛围。每周 周例会的时候,对表现突出的给予表扬,对每次都比较差的下属,单独谈心,问问具体原因。
10.提高测试人员的专业技能和工作能力:
由于测试技术的不断成熟和完善,许多的新技术陈出不穷,作为测试人员需要不断提高自己的专业技能和工作技能。不断的给自己充电,补充测试理论知识,让自己 工作技能力去弥补专业技能的不足。这样,你的工作同样可以做到最棒,效率自然很高。一段时间过去,回过头来一看,自己确实进步不少,没有虚度光阴呀!
只是我个人的想法,希望同行批评指正!!
个人认为可以从软件测试的活动中的以下指标综合考评,去评估衡量测试效率,每项指标都高,自然能够说明一些问题:
1.发现缺陷的质量:
同一个项目组内,我们一般运用测试管理工具TD, 按优先级和严重等级,把每个人的缺陷做成柱状图和饼图,放到一个文档中,邮件发给大家,让组内成员了解自己的工作情况和其他人的工作情况。同时也让开发人员,对每个测试人员的工作,做出评估,供绩效考核时参考。特别是发现非常隐蔽缺陷的测试人员,一定要重赏。
2. 测试的有效性:
一般来说,递交Bug的有效性,体现了测试员是否能够正确理解系统,并发现问题,是否能够发现有效的问题。很多时候,测试人员没有弄准确需求,或者是没搞 清楚设计,一旦出现异常,就提交Bug。不是和前面的缺陷相同,重复递交相同类型的缺陷,就是递交无效的Bug,导致后来很多缺陷,都被项目评审时拒绝, 既耽误了时间,效率自然不高。
3.测试组员交叉测试,发现漏测问题数量:
经常是这样,一个测试人员测试结束,修复了全部的缺陷。这个时候,测试的模块和测试人员交叉一下,再测试,很有可能又发现很多问题。这样我们可以对测试发现问题数量,进行统计。这样做,就迫使测试人员认真执行每一轮测试,每次测试都不敢懈怠。
4.遗漏到客户缺陷的比例:
一旦版本测试通过,发布给客户以后,客户要对发布的版本进行验收测试。同样会发现一些问题,我们也会对测试过程中发现的Bug分配到每个模块和具体的人。 但是,如果缺陷在测试环境中不能重现,只能在实际工作环境中出现,则不属于遗漏给客户的Bug,不计入漏测统计里面。有时候,客户系统在使用中也会发现缺 陷,我们同样做好记录。
5.递交的缺陷数量:
在同一个项目组内,每天递交的Bug数量,每周递交的Bug数量,每个版本测试结束,总共递交的Bug数量。最终测试结束,算出每个人递交有效缺陷的百分比。
6.执行用例的数量:
同一天,每个测试人员,执行用例的数量。但是一定要去除那些不能够测试的功能模块,或者是被阻塞的模块,这些一定要考虑到。否则大家意见就大了呢!
7.编写测试文档的速度和质量:
每次编写测试用例时,大家都要编写部分模块的测试用例,我们也可以通过单位时间内编写case的数量、速度和质量,来区分每个人的效率,我觉得也是一种好方法。
8.评审发现问题的效率:
在组织部门内部的case评审时,同一个测试文档的评审,如果提出的修改建议比较多,并且很有参考价值。这样的测试人员,效率应该比较高,得考虑考虑加薪,呵呵。
9.测试工具使用的熟练程度:
当然,一个测试人员,对测试工具的熟练程度越高,使用技巧越强,一般来说,测试的效率就越高。按常理来说,每个人不可能了解全部的自动化测试工具,我们只 对常用的测试工具进行考核就可以了,还算人性化吧。并且后面懂得较多的同事,给组内成员集体培训,使大家迅速掌握测试工具的基本使用,这才是我们的真正目 的。
10.测试结果的分析水平:
对自动化的测试工具来说,特别是性能测试结束之后,我们要分析部分测试结果,如果你都不熟悉测试工具的分析,何谈效率呢?所以测试结果的分析水平,也可以作为衡量测试效率的一个指标。
如何提高测试效率?
1.首先要有一个合理的详细的测试计划:
没有详细的测试计划,测试部的每个成员都在那儿盲无目的测试,何谈提高测试效率?当然测试计划也不能够太细,太细了,编写测试计划同样浪费时间,做到时可而止。最好是测试任务尽量能细化到测试的功能和测试的case这个级别去监控进度,较为理想。
2.测试尽早介入项目详细了解项目的业务需求,做好测试的前期准备:
目前来说,可能大家都有类似的感受,接触到的大多数的项目,都是测试周期比较短,开发人员耽误了时间,为了不拖延项目进度,留给测试人员做测试的时间都非 常紧张。如果项目测试的前期了解业务需求、了解产品属性和准备测试数据不充分,往往测试效率很低,测试时间变长,测试效率急剧下降。
3.对测试项目前景充满信心,调整最佳心态,保持愉悦的工作心情:
一般来说,如果大家认为测试的项目没什么发展前景,当然测试也不会很卖命,测试效率不用说。如果某个测试人员碰到什么不顺心的事,当天的工作效率肯定比平 常低。所以,要保证测试效率,测试负责人要察言观色,及时找不开心的下属谈心,了解并帮忙消除部分员工的不良情绪,让员工有更好的心情投入到测试工作中 去。
4.提高测试接受的标准,减少测试版本送测次数:
大部分公司的开发人员都有一种惰性,一旦公司成了测试部,他们自己测试时,都不会那么认真,以为有了测试人员,就自己就解放了。很多时候都是调试编译通 过,实际上开发人员没有做完整的自测,就拿到测试部进行测试。如果测试部门有严格的测试接受标准,一旦发现有重大问题,立即拒绝测试,送回开发人员修改。 可以减少很多次反复测试,重复测试,明显提高了测试效率。
5.测试负责人认真做好测试文档的评审:
测试经理一定要认真做好测试用例的评审,尽量使用较少的测试用例,发现较多的Bug,无疑是最佳提高效率的一种方式。很多时候,经验较少的测试人员在设计 测试用例的时候,写了很多的测试用例,测试时几乎没有发现缺陷。还有一种:比如说等价类的测试,只要具备代表性就可以了,如果写了很多测试用例,执行了半 天,臃肿的测试用例,未发现任何问题,也很不值。这些主要是靠测试用例评审的时候,测试Leader去把握了。尽量做到在满足需求的情况下,精简测试用例 数量,提高测试覆盖率。很多时候,测试人员写好用例就自己测试,根本没人评审,有些地方理解有偏差,测试点没测试到,导致发给客户版本被退回,给公司也会 带来巨大经济损失。
6.加强项目组成员的相互沟通工作和项目信息收集工作:
测试工作是一项沟通要求比较高的工作,一般需要同项目经理、产品经理、开发人员、业务人员、客户沟通。很多时候,由于测试介入较晚,测试时间短,测试初期测试人员了解需求不及开发人员,为了迅速熟悉需求,需要项目组成员之间相互培训和沟通。
测试人员为了利于测试工作,平时也需要主动和开发团队沟通项目的进度、项目存在的问题、项目的需求变更等等情况。与团队成员沟通得越充分、对项目的信息收集和把握得越及时、越准确,我们的测试工作才可能做得越顺利,才可能提高测试效率。
7.积极配合开发人员工作,努力赢得开发人员的尊重和支持:
作为测试人员,我们绝不能消极等待或一味埋怨开发人员的不理解和不重视。我们首先需要正视自己、改进自己,通过自身的不断努力让开发人员,真正体会到测试 的价值。同时,也需要理解并配合开发人员的工作。只有这样,才能赢得开发人员的支持。互相配合、互相促进,项目成员之间形成良性循环,彼此感情加深了、配 合默契了、工作效率和工作质量也就自然提高了。
8.按照项目的大小不同,必要的情况下引入自动化测试工具:
是否引入自动化的测试工具,主要取决于测试的时间长短和测试的轮次。一般来说,测试周期较长、版本升级平凡和回归测试次数较多的项目,引用测试工具可以提 高测试效率。如果测试周期较短,本来测试周期只有两三个月,开发测试脚步就要花费大量时间,引入自动化测试工具,用的次数较少,结果得不丧失,劳民伤财, 呵呵!
9.测试部门内部成员的工作业绩数据化:
具体的做法如下:每天给每个人分配的任务非常具体,并且随时关注他们的进展情况,完成百分比,不断督促他们。并且,把每个人每天的工作成果(发现缺陷的数 量和工作的质量)数据化,通过邮件的形式发给组内的成员,让大家有个比较。大家都有自尊心,看到自己落后,后面就加油赶工,形成一种良好的测试氛围。每周 周例会的时候,对表现突出的给予表扬,对每次都比较差的下属,单独谈心,问问具体原因。
10.提高测试人员的专业技能和工作能力:
由于测试技术的不断成熟和完善,许多的新技术陈出不穷,作为测试人员需要不断提高自己的专业技能和工作技能。不断的给自己充电,补充测试理论知识,让自己 工作技能力去弥补专业技能的不足。这样,你的工作同样可以做到最棒,效率自然很高。一段时间过去,回过头来一看,自己确实进步不少,没有虚度光阴呀!
只是我个人的想法,希望同行批评指正!!