技术领域
[0001] 本发明涉及软件领域,具体涉及一种软件测试效率评估方法。
相关背景技术
[0002] 软件测试工程师效率度量是业界面临的管理难题,业界常见的一些做法有:每位测试工程师直行测试用例数;每位员工的实际工时;每位员工发现的缺陷数量等。
[0003] 但针对这些算法都存在诸多的因子,会影响度量的效果,或者导致度量驱动的行为走错方向。比如,执行测试用例数量,其度量的高或者低不能完全反映测试用例的复杂度,测试的覆盖率,单纯数量衡量没有考虑测试本身的目的:保障开发产品的质量,即交付后的缺陷数量要少,测试覆盖要适度。
具体实施方式
[0028] 下面将结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0029] 下面,结合图1说明根据本发明实施例的软件测试效率评估方法。
[0030] 如图1所示,本发明实施例的软件测试效率评估方法,包括:
[0031] 基于评估人员有效性、工作产出率、以及产出质量确定所述软件测试效率。
[0032] 也就是说,根据人员的有效性、工作产出率、以及产出质量三个考核指标评估软件测试效率。
[0033] 其中,软件测试效率评估可以评估团队也可以评估员工,考虑到团队里面每个成员的分工不同,可以直接评估团队,也可以在评估出某一团队出现问题的情况,进一步评估员工,也可以直接评估工程师员工。
[0034] 以下分别从评估团队和评估员工两种情况说明本发明软件测试效率评估方法。
[0035] 首先,评估有效性,人员有效性通过下述式(1)进行评估:
[0036] A=Hr/Hp (1)
[0037] 其中,A表示人员有效性。
[0038] 当评估团队:Hr表示统计月份的实际有效工作时长,Hp表示统计月份的计划工作时长,Hp=统计月份的团队实有员工数*当月法定工作时长。
[0039] 当评估员工:Hr表示统计月份的员工实际有效工作时长,Hp=当月法定工作时长。
[0040] 由此,可以较好的评估出每月团队/员工软件测试的人员有效性。
[0041] 接着,评估工作产出率,工作产出率通过下述式(2)进行评估:
[0042] P=Tr/Tp (2)
[0043] 其中,P表示工作产出率,
[0044] 当评估团队,Tr表示统计团队当月执行的测试用例总和,Tp表示统计团队月份应该测试用例总和。
[0045] 当评估员工,Tr表示统计员工当月执行的测试用例总和,Tp表示统计员工月份应该测试用例总和。
[0046] 例如,A团队Tr为550,Tp为600;B团队Tr为650,Tp为600;说明B团队的工作产出率大于A团队。
[0047] 由此,可以较好的评估出每月团队/员工软件测试的工作产出率。
[0048] 进一步地,统计月份应该测试用例如下述式(3)所示,
[0049]
[0050] 当评估团队,k=12*团队规模,x2是k个独立变量Tr的卡方分布 的数学期望值。
[0051] 当评估员工,k=12,x2是k个独立变量Tr的卡方分布 的数学期望值。
[0052] 由此,利用历史的大数据分析方法(卡方分布检验),对测试的工作产出率做出预测,从而计算出管理层期待的工作产出率,作为重要的输入参数,计算出团队/员工的工作产出率成效。
[0053] 可选地,数学期望值计算可以是该团队预定月份(例如连续4个月等)实际执行测试用例总和与所有团队预定月份实际执行测试用例总和的乘积除以当月所有团队实际执行测试用例总和。
[0054] 例如,如表1所示,团队A和团队B计算出期望值如下:
[0055] 表1
[0056]
[0057] 比如,1月份团队A期望值=1667*1831/942=857.63。
[0058] 接着,统计产出质量,产出质量通过下述式(4)进行评估:
[0059] Q=1-(Fleakage/Ftotal) (4)
[0060] 其中,Q表示产出质量,
[0061] 当评估团队,Fleakage表示统计团队月份漏出到客户现场或用户手上的问题总数,Ftotal表示统计团队月份报告的问题总和。
[0062] 当评估员工,Fleakage表示统计员工月份漏出到客户现场或用户手上的问题总数,Ftotal表示统计员工月份报告的问题总和。
[0063] 如果,统计月份没有漏出时,Fleakage为0。
[0064] 例如,A团队Fleakage为2,Ftotal为50,B团队Fleakage为3,Ftotal为100,说明A团队的产出质量高于B团队。
[0065] 由此,可以较好的评估出每月团队/员工软件测试的产出质量。
[0066] 最后,进行软件效率评估,软件测试效率通过下述式(5)进行评估:
[0067] SWTEImonth=α*A*P*Q (5)
[0068] 即SWTEImonth=α*(Hr/Hp)*(Tr/Tp)*(1-(Fleakage/Ftotal))
[0069] 其中,SWTEImonth表示统计月份的软件测试效率,α为调整因子。
[0070] 当评估团队,优选地,α为每个团队根据实际情况调整的非测试人员的比例,α=0.9。
[0071] 当评估员工,优选地,α为1。
[0072] 需要注意的是,以上只是可选地示例,有效性(A)、工作产出率(P)、产出质量(Q)还可以根据每个参数的重要性分别设置不同的权重。
[0073] SWTEImonth=α*(δA)*(εP)*(ζQ)
[0074] 其中,δ为A的权重,ε为P的权重,ζ为Q的权重。
[0075] 由此,可以能够较好的评估团队/员工软件测试效率,及时发现异常团队,对团队的人员和数据进行调配。
[0076] 进一步地,软件测试效率的百分比通过下式(6)进行计算:
[0077]
[0078] β0,β1是回归方程式系数因子,需要根据历史数据抽象归纳出来,优选地取值0,1。
[0079] 由此,可以准确计算出软件测试效率的百分比。
[0080] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。