一种对软件功能进行测试的方法及装置.pdf

上传人:b*** 文档编号:1285610 上传时间:2018-04-12 格式:PDF 页数:23 大小:1.47MB
返回 下载 相关 举报
摘要
申请专利号:

CN201610915288.4

申请日:

2016.10.20

公开号:

CN106502893A

公开日:

2017.03.15

当前法律状态:

实审

有效性:

审中

法律详情:

实质审查的生效IPC(主分类):G06F 11/36申请日:20161020|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

郑州云海信息技术有限公司

发明人:

赵霞

地址:

450000 河南省郑州市郑东新区心怡路278号16层1601室

优先权:

专利代理机构:

济南信达专利事务所有限公司 37100

代理人:

李世喆

PDF下载: PDF下载
内容摘要

本发明提供了一种对软件功能进行测试的方法及装置,该方法包括:获取至少一个对应于待测试软件的测试用例;确定待测试软件的核心业务模块及基础业务模块;针对于每一个测试用例,根据至少一个自动化测试专家的判断结果,确定测试用例对应的自动化分值;针对于每一个测试用例,根据测试用例对应的自动化分值及测试对象,判断测试用例是否为自动化测试用例,其中测试对象包括核心业务模块或使基础业务模块;获取判断结果为是的至少一个测试用例,形成自动化测试用例集;从自动化测试用例集中选择至少一个测试用例,通过所选的测试用例对待测试软件的功能进行测试。本方案能够提高对软件功能进行测试的效率。

权利要求书

1.一种对软件功能进行测试的方法,其特征在于,获取至少一个对应于待测试软件的
测试用例,还包括:
确定所述待测试软件的核心业务模块及基础业务模块;
针对于每一个所述测试用例,根据至少一个自动化测试专家的判断结果,确定所述测
试用例对应的自动化分值;
针对于每一个所述测试用例,根据所述测试用例对应的自动化分值及测试对象,判断
所述测试用例是否为自动化测试用例,其中所述测试对象包括所述核心业务模块或使所述
基础业务模块;
获取判断结果为是的至少一个所述测试用例,形成自动化测试用例集;
从所述自动化测试用例集中选择至少一个测试用例,通过所选的测试用例对所述待测
试软件的功能进行测试。
2.根据权利要求1所述的方法,其特征在于,
所述根据至少一个自动化测试专家的判断结果确定所述测试用例对应的自动化分值,
包括:
获取所述至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人
数;
获取所述至少一个自动化测试专家中判断所述测试用例为手动化测试用例的第二人
数;
根据所述第一人数及所述第二人数,通过如下公式一确定所述测试用例对应的自动化
分值;
所述公式一包括:
<mrow> <mi>P</mi> <mo>=</mo> <mfrac> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <msub> <mi>R</mi> <mn>1</mn> </msub> <mo>+</mo> <msub> <mi>R</mi> <mn>2</mn> </msub> </mrow> </mfrac> </mrow>
其中,所述P为所述测试用例对应的自动化分值,所述R1为所述至少一个自动化测试专
家中判断所述测试用例为自动化测试用例的第一人数,所述R2为所述至少一个自动化测试
专家中判断所述测试用例为手动化测试用例的第二人数。
3.根据权利要求1所述的方法,其特征在于,
所述根据所述测试用例对应的自动化分值及测试对象判断所述测试用例是否为自动
化测试用例,包括:
S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果是,确
定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;
S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果是,执
行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;
S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测试用
例为自动化测试用例,并结束当前流程,否则执行步骤S8;
S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果是,执
行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;
S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤S7,否
则执行步骤S8;
S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定所述
测试用例为手动化测试用例,并结束当前流程;
S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,所述
平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供的实
现工时确定。
S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为手动
化测试用例,并结束当前流程;
S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤10,否
则确定所述测试用例为手动化测试用例,并结束当前流程;
S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自动化
测试用例。
4.根据权利要求3所述的方法,其特征在于,
所述根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供的实
现工时确定所述平均工时,包括:
获取所述至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人
数;
获取判断所述测试用例为自动化测试用例的每一个自动化测试专家提供的针对于所
述测试用例的实现工时;
根据所述第一人数及各个所述实现工时,通过如下公式二确定所述测试用例实现自动
化的平均工时;
所述公式二包括:
<mrow> <mi>T</mi> <mo>=</mo> <mfrac> <mrow> <msubsup> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <msub> <mi>T</mi> <mi>i</mi> </msub> </mrow> <mi>m</mi> </mfrac> </mrow>
其中,所述T为所述测试用例实现自动化的平均工时,所述Ti第i个判断所述测试用例为
自动化测试用例的自动化测试专家提供过的针对于所述测试用例的实现工时,所述m为是
至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人数。
5.根据权利要求1至4中任一所述的方法,其特征在于,
所述从所述自动化测试用例集中选择至少一个测试用例,包括:
根据所述测试用例对应的自动化分值,按照自动化分值由大到小的顺序对所述自动化
测试用例集中的所述测试用例进行排序;
根据排序结果,按照从先到后的顺序从所述自动化测试用例集中选择至少一个测试用
例。
6.一种对软件功能进行测试的装置,其特征在于,包括:获取单元、计算单元、判断单元
及测试单元;
所述获取单元,用于获取至少一个对应于待测试软件的测试用例,并确定所述待测试
软件的核心业务模块及基础业务模块;
所述计算单元,用于针对于所述获取单元获取到的每一个所述测试用例,根据至少一
个自动化测试专家的判断结果,确定所述测试用例对应的自动化分值;
所述判断单元,用于针对于所述获取单元获取到的每一个所述测试用例,根据所述计
算单元确定出的所述测试用例对应的自动化分值及测试对象,判断所述测试用例是否为自
动化测试用例,其中所述测试对象包括所述获取单元获取到的所述核心业务模块或使所述
基础业务模块;
所述测试单元,用于根据所述判断单元的判断结果,获取判断结果为是的至少一个所
述测试用例,形成自动化测试用例集;并从所述自动化测试用例集中选择至少一个测试用
例,通过所选的测试用例对所述待测试软件的功能进行测试。
7.根据权利要求6所述的装置,其特征在于,
所述计算单元,用于获取所述至少一个自动化测试专家中判断所述测试用例为自动化
测试用例的第一人数,以及获取所述至少一个自动化测试专家中判断所述测试用例为手动
化测试用例的第二人数;并根据所述第一人数及所述第二人数,通过如下公式一确定所述
测试用例对应的自动化分值;
所述公式一包括:
<mrow> <mi>P</mi> <mo>=</mo> <mfrac> <msub> <mi>R</mi> <mn>1</mn> </msub> <mrow> <msub> <mi>R</mi> <mn>1</mn> </msub> <mo>+</mo> <msub> <mi>R</mi> <mn>2</mn> </msub> </mrow> </mfrac> </mrow>
其中,所述P为所述测试用例对应的自动化分值,所述R1为所述至少一个自动化测试专
家中判断所述测试用例为自动化测试用例的第一人数,所述R2为所述至少一个自动化测试
专家中判断所述测试用例为手动化测试用例的第二人数。
8.根据权利要求6所述的装置,其特征在于,
所述判断单元,用于执行如下步骤:
S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果是,确
定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;
S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果是,执
行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;
S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测试用
例为自动化测试用例,并结束当前流程,否则执行步骤S8;
S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果是,执
行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;
S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤S7,否
则执行步骤S8;
S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定所述
测试用例为手动化测试用例,并结束当前流程;
S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,所述
平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供的实
现工时确定。
S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为手动
化测试用例,并结束当前流程;
S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤10,否
则确定所述测试用例为手动化测试用例,并结束当前流程;
S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自动化
测试用例。
9.根据权利要求8所述的装置,其特征在于,
所述判断单元包括:平均工时计算子单元;
所述平均工时计算子单元,用于获取所述至少一个自动化测试专家中判断所述测试用
例为自动化测试用例的第一人数,以及获取判断所述测试用例为自动化测试用例的每一个
自动化测试专家提供的针对于所述测试用例的实现工时;并根据所述第一人数及各个所述
实现工时,通过如下公式二确定所述测试用例实现自动化的平均工时;
所述公式二包括:
<mrow> <mi>T</mi> <mo>=</mo> <mfrac> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>m</mi> </msubsup> <msub> <mi>T</mi> <mi>i</mi> </msub> </mrow> <mi>m</mi> </mfrac> </mrow>
其中,所述T为所述测试用例实现自动化的平均工时,所述Ti第i个判断所述测试用例为
自动化测试用例的自动化测试专家提供过的针对于所述测试用例的实现工时,所述m为是
至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人数。
10.根据权利要求6至9中任一所述的装置,其特征在于,
所述测试单元包括:排序子单元及选择子单元;
所述排序子单元,用于根据所述测试用例对应的自动化分值,按照自动化分值由大到
小的顺序对所述自动化测试用例集中的所述测试用例进行排序;
所述选择子单元,用于根据所述排序子单元的排序结果,按照从先到后的顺序从所述
自动化测试用例集中选择至少一个测试用例。

说明书

一种对软件功能进行测试的方法及装置

技术领域

本发明涉及计算机技术领域,特别涉及一种对软件功能进行测试的方法及装置。

背景技术

在软件开发完成后,为了保证软件能够稳定地运行,需要对软件功能进行测试,在
对软件功能进行测试的过程中,测试人员选择测试用例,通过测试用例对软降功能进行测
试。其中,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,一
遍测试某个程序路径或核实是否满足某个特定需求。

测试用例包括自动化测试用例和手动化测试用例,其中自动化测试用例可以自动
化完成对软件的测试,而手动化测试用例需要人工参与才能完成对软件的测试。

目前,需要对软件功能进行测试时,测试人员根据经验选择相应的测试用例,通过
所选的测试用例对软件功能进行测试。

针对于目前对软件功能进行测试的方法,由于测试人员的经验以及对产品的了解
不同,测试人员所选择的测试用例中包括较多的手动化测试用例,造成对软件功能进行测
试的自动化程度较低,导致对软件功能进行测试的效率较低。

发明内容

本发明实施例提供了一种对软件功能进行测试的方法及装置,能够提高对软件功
能进行测试的效率。

本发明实施例提供了一种对软件功能进行测试的方法,获取至少一个对应于待测
试软件的测试用例,还包括:

确定所述待测试软件的核心业务模块及基础业务模块;

针对于每一个所述测试用例,根据至少一个自动化测试专家的判断结果,确定所
述测试用例对应的自动化分值;

针对于每一个所述测试用例,根据所述测试用例对应的自动化分值及测试对象,
判断所述测试用例是否为自动化测试用例,其中所述测试对象包括所述核心业务模块或使
所述基础业务模块;

获取判断结果为是的至少一个所述测试用例,形成自动化测试用例集;

从所述自动化测试用例集中选择至少一个测试用例,通过所选的测试用例对所述
待测试软件的功能进行测试。

优选地,

所述根据至少一个自动化测试专家的判断结果确定所述测试用例对应的自动化
分值,包括:

获取所述至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第
一人数;

获取所述至少一个自动化测试专家中判断所述测试用例为手动化测试用例的第
二人数;

根据所述第一人数及所述第二人数,通过如下公式一确定所述测试用例对应的自
动化分值;

所述公式一包括:


其中,所述P为所述测试用例对应的自动化分值,所述R1为所述至少一个自动化测
试专家中判断所述测试用例为自动化测试用例的第一人数,所述R2为所述至少一个自动化
测试专家中判断所述测试用例为手动化测试用例的第二人数。

优选地,

所述根据所述测试用例对应的自动化分值及测试对象判断所述测试用例是否为
自动化测试用例,包括:

S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;

S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果
是,执行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;

S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测
试用例为自动化测试用例,并结束当前流程,否则执行步骤S8;

S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果
是,执行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;

S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
S7,否则执行步骤S8;

S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定
所述测试用例为手动化测试用例,并结束当前流程;

S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,
所述平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供
的实现工时确定。

S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为
手动化测试用例,并结束当前流程;

S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤
10,否则确定所述测试用例为手动化测试用例,并结束当前流程;

S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自
动化测试用例。

优选地,

所述根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供
的实现工时确定所述平均工时,包括:

获取所述至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第
一人数;

获取判断所述测试用例为自动化测试用例的每一个自动化测试专家提供的针对
于所述测试用例的实现工时;

根据所述第一人数及各个所述实现工时,通过如下公式二确定所述测试用例实现
自动化的平均工时;

所述公式二包括:


其中,所述T为所述测试用例实现自动化的平均工时,所述Ti第i个判断所述测试
用例为自动化测试用例的自动化测试专家提供过的针对于所述测试用例的实现工时,所述
m为是至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人数。

优选地,

所述从所述自动化测试用例集中选择至少一个测试用例,包括:

根据所述测试用例对应的自动化分值,按照自动化分值由大到小的顺序对所述自
动化测试用例集中的所述测试用例进行排序;

根据排序结果,按照从先到后的顺序从所述自动化测试用例集中选择至少一个测
试用例。

本发明实施例还提供了一种对软件功能进行测试的装置,包括:获取单元、计算单
元、判断单元及测试单元;

所述获取单元,用于获取至少一个对应于待测试软件的测试用例,并确定所述待
测试软件的核心业务模块及基础业务模块;

所述计算单元,用于针对于所述获取单元获取到的每一个所述测试用例,根据至
少一个自动化测试专家的判断结果,确定所述测试用例对应的自动化分值;

所述判断单元,用于针对于所述获取单元获取到的每一个所述测试用例,根据所
述计算单元确定出的所述测试用例对应的自动化分值及测试对象,判断所述测试用例是否
为自动化测试用例,其中所述测试对象包括所述获取单元获取到的所述核心业务模块或使
所述基础业务模块;

所述测试单元,用于根据所述判断单元的判断结果,获取判断结果为是的至少一
个所述测试用例,形成自动化测试用例集;并从所述自动化测试用例集中选择至少一个测
试用例,通过所选的测试用例对所述待测试软件的功能进行测试。

优选地,

所述计算单元,用于获取所述至少一个自动化测试专家中判断所述测试用例为自
动化测试用例的第一人数,以及获取所述至少一个自动化测试专家中判断所述测试用例为
手动化测试用例的第二人数;并根据所述第一人数及所述第二人数,通过如下公式一确定
所述测试用例对应的自动化分值;

所述公式一包括:


其中,所述P为所述测试用例对应的自动化分值,所述R1为所述至少一个自动化测
试专家中判断所述测试用例为自动化测试用例的第一人数,所述R2为所述至少一个自动化
测试专家中判断所述测试用例为手动化测试用例的第二人数。

优选地,

所述判断单元,用于执行如下步骤:

S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;

S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果
是,执行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;

S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测
试用例为自动化测试用例,并结束当前流程,否则执行步骤S8;

S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果
是,执行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;

S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
S7,否则执行步骤S8;

S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定
所述测试用例为手动化测试用例,并结束当前流程;

S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,
所述平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供
的实现工时确定。

S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为
手动化测试用例,并结束当前流程;

S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤
10,否则确定所述测试用例为手动化测试用例,并结束当前流程;

S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自
动化测试用例。

优选地,

所述判断单元包括:平均工时计算子单元;

所述平均工时计算子单元,用于获取所述至少一个自动化测试专家中判断所述测
试用例为自动化测试用例的第一人数,以及获取判断所述测试用例为自动化测试用例的每
一个自动化测试专家提供的针对于所述测试用例的实现工时;并根据所述第一人数及各个
所述实现工时,通过如下公式二确定所述测试用例实现自动化的平均工时;

所述公式二包括:


其中,所述T为所述测试用例实现自动化的平均工时,所述Ti第i个判断所述测试
用例为自动化测试用例的自动化测试专家提供过的针对于所述测试用例的实现工时,所述
m为是至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人数。

优选地,

所述测试单元包括:排序子单元及选择子单元;

所述排序子单元,用于根据所述测试用例对应的自动化分值,按照自动化分值由
大到小的顺序对所述自动化测试用例集中的所述测试用例进行排序;

所述选择子单元,用于根据所述排序子单元的排序结果,按照从先到后的顺序从
所述自动化测试用例集中选择至少一个测试用例。

本发明实施例提供了一种对软件功能进行测试的方法及装置,获取至少一个对应
于待测试软件的测试用例后,根据至少一个自动化测试专家的判断结果分别确定各个测试
用例对应的自动化分值;针对于每一个测试用例,根据其对应的自动化分值及对应的测试
对象,确定该测试用例是否为自动化测试用例;由确定为自动化测试用例的至少一个测试
用例形成自动化测试用例集;从自动化测试用例集中选择至少一个测试用例对待测试软件
的功能进行测试。根据自动化分值及测试对象来确定测试用例是否为自动化测试用例,可
以保证确定出的自动化测试用例集中的测试用例具有较高的自动化率,进而通过自动化测
试用例集中的测试用例对待测试软件的功能进行测试时,可以提高对软件功能进行测试的
自动化程度,从而提高对软件功能进行测试的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明
的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据
这些附图获得其他的附图。

图1是本发明一个实施例提供的一种对软件功能进行测试的方法流程图;

图2是本发明一个实施例提供的一种根据自动化分值判断自动化测试用例的方法
流程图;

图3是本发明一个实施例提供的一种自动化分值位于第一区间内时对测试用例进
行判断的方法流程图;

图4是本发明一个实施例提供的一种自动化分值位于第二区间内时对测试用例进
行判断的方法流程图;

图5是本发明一个实施例提供的一种自动化分值位于第三区间内时对测试用例进
行判断的方法流程图;

图6是本发明一个实施例提供的一种对软件功能进行测试的装置示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例
中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员
在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种对软件功能进行测试的方法,该方法可以包
括以下步骤:

步骤101:获取至少一个对应于待测试软件的测试用例;

步骤102:确定所述待测试软件的核心业务模块及基础业务模块;

步骤103:针对于每一个所述测试用例,根据至少一个自动化测试专家的判断结
果,确定所述测试用例对应的自动化分值;

步骤104:针对于每一个所述测试用例,根据所述测试用例对应的自动化分值及测
试对象,判断所述测试用例是否为自动化测试用例,其中所述测试对象包括所述核心业务
模块或使所述基础业务模块;

步骤105:获取判断结果为是的至少一个所述测试用例,形成自动化测试用例集;

步骤106:从所述自动化测试用例集中选择至少一个测试用例,通过所选的测试用
例对所述待测试软件的功能进行测试。

本发明实施例提供了一种对软件功能进行测试的方法,获取至少一个对应于待测
试软件的测试用例后,根据至少一个自动化测试专家的判断结果分别确定各个测试用例对
应的自动化分值;针对于每一个测试用例,根据其对应的自动化分值及对应的测试对象,确
定该测试用例是否为自动化测试用例;由确定为自动化测试用例的至少一个测试用例形成
自动化测试用例集;从自动化测试用例集中选择至少一个测试用例对待测试软件的功能进
行测试。根据自动化分值及测试对象来确定测试用例是否为自动化测试用例,可以保证确
定出的自动化测试用例集中的测试用例具有较高的自动化率,进而通过自动化测试用例集
中的测试用例对待测试软件的功能进行测试时,可以提高对软件功能进行测试的自动化程
度,从而提高对软件功能进行测试的效率。

在本发明一个实施例中,测试用例对应的自动化分值是根据至少一个自动化专家
的判断结果来确定的。具体地,针对每一个测试用例,由至少一个自动化测试专家分别判断
该测试用例是自动化测试用例还是手动化测试用例,获取至少一个自动化测试专家中判断
该测试用例为自动化测试用例的第一人数和判断该测试用例为手动化测试用例的第二人
数;根据获取到的第一人数和第二人数,通过如下公式一计算该测试用例对应的自动化分
值;

所述公式一为:


其中,P为测试用例对应的自动化分值,R1为第一人数,R2为第二人数。

具体地,

针对于每一个测试用例,由多个自动化测试专家分别判断其为自动化测试用例还
是手动化测试用例,根据各个自动化测试专家的判断结果,将判断该测试用例为自动化测
试用例的人数占自动化测试专家总人数的比例作为该测试用例的自动化分值;自动化分值
越大,说明认为该测试用例是自动化测试用例的人数越多,由于自动化测试专家具有比较
丰富的软件功能测试经验,因此,自动化分值越大说明该测试用例为自动化测试用例的概
率越高。通过自动化分值来评判测试用例是否为自动化测试用例,可以保证对测试用例进
行判断的准确性。

例如,有20位自动化测试专家参与一个测试用例A的判断,其中有12位自动化测试
专家认为该测试用例A是自动化测试用例,其与8位自动化测试专家认为该测试用例A是手
动化测试用例,则该测试用例A对应的自动化分值等于0.6。

在本发明一个实施例中,根据对应的自动化分值及测试对象来判断一个测试用例
是否为自动化测试用例时,该判断方法可以包括如下步骤:

S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;

S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果
是,执行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;

S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测
试用例为自动化测试用例,并结束当前流程,否则执行步骤S8;

S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果
是,执行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;

S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
S7,否则执行步骤S8;

S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定
所述测试用例为手动化测试用例,并结束当前流程;

S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,
所述平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供
的实现工时确定。

S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为
手动化测试用例,并结束当前流程;

S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤
10,否则确定所述测试用例为手动化测试用例,并结束当前流程;

S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自
动化测试用例。

为了更加清楚的对判断测试用例是否为自动化测试用例的过程进行说明,下面结
合图2至图5,分别对判断测试用例是否为自动化测试用例的方法进行分别说明。

首先判断测试用例对应自动化测试分值所属的范围,如图2所示,判断过程包括以
下步骤:

步骤201:判断测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果
是,确定测试用例为自动化测试用例,否则执行步骤202;

步骤202:判断测试用例对应的自动化分值是否大于或等于预设的第二阈值,其中
第二阈值小于第一阈值,如果是,确定自动化分值位于大于等于第二阈值且小于第一阈值
的范围(对应图3中步骤301),否则执行步骤203;

步骤203:判断测试用例对应的自动化分值是否大于或等于预设的第三阈值,其中
第三阈值小于第二阈值,如果是,确定自动化分值位于大于等于第三阈值且小于第二阈值
的范围(对应图4中步骤401),否则执行步骤204;

步骤204:判断测试用例对应的自动化分值是否大于零,其中第三阈值大于零,如
果是,确定自动化分值位于大于零且小于第三阈值的范围(对应图5中步骤501),否则确定
测试用例为手动化测试用例。

当确定自动化分值位于大于等于第二阈值且小于第一阈值的范围时,进一步的处
理过程如图3所示,包括如下步骤:

步骤301:确定自动化分值位于大于等于第二阈值且小于第一阈值的范围。

在本发明一个实施例中,预设的第一阈值为0.8,第二阈值为0.5,首先判断测试用
例对应的自动化分值是否大于或等于0.8,如果是直接确定该测试用例为自动化测试用例;
如果否,继续判断该测试用例对应的自动化分值是否大于或等于0.5,如果是则确定该测试
用例对应的自动化分值位于大于等于0.5且小于0.8的范围。

步骤302:判断测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
304,否则执行步骤303。

在本发明一个实施例中,在确定该测试用例对应的自动化分值位于大于等于0.5
且小于0.8的范围之后,进一步判断该测试用例的测试对象是否为待测试软件的核心业务
模块,如果是确定该测试用例为自动化测试用例,相应地执行步骤304,否则执行步骤303。

步骤303:判断测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,执行步骤304,否则执行步骤305。

在本发明一个实施例中,在判断测试用例的测试对象为基础业务模块后,进一步
判断该测试用例实现自动化的平均工时是否小于预设的标准工时,比如标准工时为4,如果
判断结果为是,确定该测试用例为自动化测试用例,相应地执行步骤304,如果判断结果为
否,确定该测试用例为手动化测试用例,相应地执行步骤305。其中,平均工时是根据判断该
测试用例为自动化测试用例的各个自动化测试专家给出的实现工时计算而获得。

步骤304:确定测试用例为自动化测试用例,并结束当前流程。

步骤305:确定测试用例为手动化测试用例。

当确定自动化分值位于大于等于第三阈值且小于第二阈值的范围时,进一步的处
理过程如图4所示,包括如下步骤:

步骤401:确定自动化分值位于大于等于第三阈值且小于第二阈值的范围。

在本发明一个实施例中,预设的第三阈值为0.2,在判断测试用例对应的自动化分
值小于0.5后,继续判断该测试用例对应的自动化分值是否大于或等于0.2,如果是则确定
该测试用例对应的自动化分值位于大于等于0.2且小于0.5的范围。

步骤402:判断判断测试用例对应的测试对象是否为核心业务模块,如果是,执行
步骤403,否则执行步骤406。

在本发明一个实施例中,在确定该测试用例对应的自动化分值位于大于等于0.2
且小于0.5的范围之后,进一步判断该测试用例的测试对象是否为待测试软件的核心业务
模块,如果是执行步骤403,否则执行步骤406。

步骤403:判断测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,执行步骤404,否则执行步骤405。

在本发明一个实施例中,在确定测试用例的测试对象为待测试软件的核心业务模
块后,进一步判断该测试用例实现自动化的平均工时是否小于预设的标准工时,比如标准
工时为4,如果判断结果为是,确定该测试用例为自动化测试用例,相应地执行步骤404,如
果判断结果为否,相应地执行步骤405。

步骤404:确定测试用例为自动化测试用例,并结束当前流程。

步骤405:根据至少一个自动化测试专家的评审结果,确定测试用例是否为自动化
测试用例,并结束当前流程。

在本发明一个实施例中,在判断测试用例满足如下三个条件后,由至少一个自动
化测试专家对该测试用例进行进一步的评审,根据评审结果确定该测试用例是否为自动化
测试用例;其中三个条件分别为:

条件1:对应的自动化分值位于大于等于第三阈值且小于第二阈值的范围;

条件2:对应的测试对象为待测试软件的核心业务模块;

条件3:对应的实现自动化的平均工时等于或等于预设的标准工时。

步骤406:判断测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,执行步骤404,否则执行步骤407。

在本发明一个实施例中,在判断测试用例满足如下三个条件后,确定该测试用例
为自动化测试利用,相应地执行步骤404,否则确定该测试用例为手动化测试用例,相应地
执行步骤407;其中所述的三个条件分别为:

条件1:对应的自动化分值位于大于等于第三阈值且小于第二阈值的范围;

条件2:对应的测试对象为待测试软件的基础业务模块;

条件3:对应的实现自动化的平均工时等于或等于预设的标准工时。

步骤407:确定测试用例为手动化测试用例。

当确定自动化分值位于大于零且小于第三阈值的范围时,进一步的处理过程如图
5所示,包括如下步骤:

步骤501:确定自动化分值位于大于零且小于第三阈值的范围。

在本发明一个实施例中,在判断测试用例对应的自动化分值小于第三阈值(0.2)
后,继续判断该测试用例对应的自动化分值是否大于零,如果是则确定该测试用例对应的
自动化分值位于大于零且小于0.2的范围,否则直接确定该测试用例为手动化测试用例。

步骤502:判断测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
503,否则执行步骤504。

在本发明一个实施例中,在确定测试用例对应的自动化分值位于大于零且小于
0.2的范围后,进一步判断该测试用例的测试对象是否为待测试软件的核心业务模块,如果
是确定该测试用例为自动化测试用例,相应地执行步骤503,否则确定该测试用例为手动化
测试用例,相应地执行步骤504。

步骤503:确定测试用例为自动化测试用例,并结束当前流程。

步骤504:确定测试用例为手动化测试用例。

在本发明一个实施例中,确定测试用例实现自动化的平均工时的过程包括如下操
作:

获取至少一个自动化测试专家中判断测试用例为自动化测试测试用例的第一人
数;

获取判断测试用例为自动化测试用例的各个自动化测试专家提供的针对该测试
用例的实现工时;

根据获取到的第一人数及各个实现工时,通过如下公式二确定测试用例实现自动
化的平均工时;

所述公式二包括:


其中,T为测试用例实现自动化的平均工时,Ti第i个判断测试用例为自动化测试
用例的自动化测试专家提供过的针对于测试用例的实现工时,m为是至少一个自动化测试
专家中判断测试用例为自动化测试用例的第一人数。

具体地,

在由判断一个测试用例为自动化测试用例的各个自动化测试专家给出该测试用
例实现自动化的实现工时,计算各个自动化测试专家给出的实现工时的平均值,形成平均
工时。由于自动化测试用例对软件功能进行测试的过程自动实现,所需的工时相对较少,通
过平均工时进一步对有争议的测试用例进行判断,保证自动化测试用例集中尽可能包括更
多的自动化测试用例,提供对软件进行测试的全面性;另外,还能够保证自动化测试用例集
中所包括的测试用例具有较高的自动化率。

在本发明一个实施例中,在从自动化测试用例集中选择用于测试待测试软件的测
试用例时,首先根据测试用例对应的自动化分值,按照自动化分值由大到小的顺序对自动
化测试用例集中的测试用例进行排序;根据排序结果,按照从先到后的顺序从自动化测试
用例集中选择至少一个测试用例,通过选择的测试用例对待测试软件的功能进行测试。由
于测试用例对应的自动化分值越高,测试用例能够进行自动化测试的概率越大,根据自动
化分值排序后选择自动化分值较大的测试用例对待测试软件进行测试,可以进一步保证对
待测试软件进行测试的效率。

如图6所示,本发明一个实施例提供了一种对软件功能进行测试的装置,包括:获
取单元601、计算单元602、判断单元603及测试单元604;

所述获取单元601,用于获取至少一个对应于待测试软件的测试用例,并确定所述
待测试软件的核心业务模块及基础业务模块;

所述计算单元602,用于针对于所述获取单元601获取到的每一个所述测试用例,
根据至少一个自动化测试专家的判断结果,确定所述测试用例对应的自动化分值;

所述判断单元603,用于针对于所述获取单元601获取到的每一个所述测试用例,
根据所述计算单元602确定出的所述测试用例对应的自动化分值及测试对象,判断所述测
试用例是否为自动化测试用例,其中所述测试对象包括所述获取单元601获取到的所述核
心业务模块或使所述基础业务模块;

所述测试单元604,用于根据所述判断单元603的判断结果,获取判断结果为是的
至少一个所述测试用例,形成自动化测试用例集;并从所述自动化测试用例集中选择至少
一个测试用例,通过所选的测试用例对所述待测试软件的功能进行测试。

在本发明一个实施例中,所述计算单元602用于获取所述至少一个自动化测试专
家中判断所述测试用例为自动化测试用例的第一人数,以及获取所述至少一个自动化测试
专家中判断所述测试用例为手动化测试用例的第二人数;并根据所述第一人数及所述第二
人数,通过如下公式一确定所述测试用例对应的自动化分值;

所述公式一包括:


其中,所述P为所述测试用例对应的自动化分值,所述R1为所述至少一个自动化测
试专家中判断所述测试用例为自动化测试用例的第一人数,所述R2为所述至少一个自动化
测试专家中判断所述测试用例为手动化测试用例的第二人数。

在本发明一个实施例中,所述判断单元603用于执行如下步骤:

S1:判断所述测试用例对应的自动化分值是否大于或等于预设的第一阈值,如果
是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S2;

S2:判断所述测试用例对应的自动化分值是否大于或等于预设的第二阈值,如果
是,执行步骤S3,否则执行步骤S4,其中所述第二阈值小于所述第一阈值;

S3:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,确定所述测
试用例为自动化测试用例,并结束当前流程,否则执行步骤S8;

S4:判断所述测试用例对应的自动化分值是否大于或等于预设的第三阈值,如果
是,执行步骤S5,否则执行步骤S6,其中所述第三阈值小于所述第二阈值;

S5:判断所述测试用例对应的测试对象是否为核心业务模块,如果是,执行步骤
S7,否则执行步骤S8;

S6:判断测试用例对应的自动化分值是否大于零,如果是,执行步骤S9,否则确定
所述测试用例为手动化测试用例,并结束当前流程;

S7:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则执行步骤S10;其中,
所述平均工时根据判断所述测试用例为自动化测试用例的至少一个自动化测试专家提供
的实现工时确定。

S8:判断所述测试用例实现自动化的平均工时是否小于或等于预设的标准工时,
如果是,确定所述测试用例为自动化测试用例,并结束当前流程,否则确定所述测试用例为
手动化测试用例,并结束当前流程;

S9:判断所述测试用例对应的测试对应是否为核心业务模块,如果是,执行步骤
10,否则确定所述测试用例为手动化测试用例,并结束当前流程;

S10:根据所述至少一个自动化测试专家的评审结果,确定所述测试用例是否为自
动化测试用例。

在本发明一个实施例中,所述判断单元603包括:平均工时计算子单元;

所述平均工时计算子单元,用于获取所述至少一个自动化测试专家中判断所述测
试用例为自动化测试用例的第一人数,以及获取判断所述测试用例为自动化测试用例的每
一个自动化测试专家提供的针对于所述测试用例的实现工时;并根据所述第一人数及各个
所述实现工时,通过如下公式二确定所述测试用例实现自动化的平均工时;

所述公式二包括:


其中,所述T为所述测试用例实现自动化的平均工时,所述Ti第i个判断所述测试
用例为自动化测试用例的自动化测试专家提供过的针对于所述测试用例的实现工时,所述
m为是至少一个自动化测试专家中判断所述测试用例为自动化测试用例的第一人数。

在本发明一个实施例中,所述测试单元604包括:排序子单元及选择子单元;

所述排序子单元,用于根据所述测试用例对应的自动化分值,按照自动化分值由
大到小的顺序对所述自动化测试用例集中的所述测试用例进行排序;

所述选择子单元,用于根据所述排序子单元的排序结果,按照从先到后的顺序从
所述自动化测试用例集中选择至少一个测试用例。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施
例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明实施例提供的对软件功能进行测试的方法及装置,至少具有如下有益效
果:

1、获取至少一个对应于待测试软件的测试用例后,根据至少一个自动化测试专家
的判断结果分别确定各个测试用例对应的自动化分值;针对于每一个测试用例,根据其对
应的自动化分值及对应的测试对象,确定该测试用例是否为自动化测试用例;由确定为自
动化测试用例的至少一个测试用例形成自动化测试用例集;从自动化测试用例集中选择至
少一个测试用例对待测试软件的功能进行测试。根据自动化分值及测试对象来确定测试用
例是否为自动化测试用例,可以保证确定出的自动化测试用例集中的测试用例具有较高的
自动化率,进而通过自动化测试用例集中的测试用例对待测试软件的功能进行测试时,可
以提高对软件功能进行测试的自动化程度,从而提高对软件功能进行测试的效率。

2、通过自动化测试专家的判断获取测试用例对应的自动化分值,将自动化分值作
为判断测试用例是否为自动化测试用例的一个参数,通过这种类专家法评判测试用例可否
进行自动化,将判断出的可进行自动化的测试用例作为一个自动化测试用例集,测试人员
从自动化测试用例集中选择测试用例对软件的功能进行测试,将测试人员水平对于自动化
测试用例选择的影响降到最低,保证所选的测试用例用例能够进行自动化测试,提高对软
件功能进行测试的效率。

3、将测试用例的测试对象作为判断自动化测试用例的一个参数,由于待测试软件
的核心业务模块是待测试软件的测试重点,当一个测试用例对应的自动化分值较低时,可
以进一步判断该测试用例的测试对象是否为核心业务模块,如果是则进一步判断其是否为
自动化测试用例。这样可以保证对核心业务模块测试的测试用例得到更加准确的判断,保
证对核心业务模块进行测试的自动化测试用例能够添加到自动化测试用例集中,保证对软
件核心业务模块进行能够测试的全面性。

4、如果一个测试用例的测试对象是核心业务模块,在根据自动化分值及平均工时
判断该测试用例均不是自动化测试用例后,需要自动化测试专家进一步对该测试用例进行
评审,根据评审的结果决定该测试用例是否为自动化测试用例。进一步保证对核心业务模
块进行测试的自动化测试用例能够添加到自动化测试用例集中,保证对软件核心业务模块
进行能够测试的全面性。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体
或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在
任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非
排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,
而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固
有的要素。在没有更多限制的情况下,由语句“包括一个······”限定的要素,并不排
除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过
程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序
在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光
盘等各种可以存储程序代码的介质中。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技
术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、
等同替换、改进等,均包含在本发明的保护范围内。

一种对软件功能进行测试的方法及装置.pdf_第1页
第1页 / 共23页
一种对软件功能进行测试的方法及装置.pdf_第2页
第2页 / 共23页
一种对软件功能进行测试的方法及装置.pdf_第3页
第3页 / 共23页
点击查看更多>>
资源描述

《一种对软件功能进行测试的方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种对软件功能进行测试的方法及装置.pdf(23页珍藏版)》请在专利查询网上搜索。

本发明提供了一种对软件功能进行测试的方法及装置,该方法包括:获取至少一个对应于待测试软件的测试用例;确定待测试软件的核心业务模块及基础业务模块;针对于每一个测试用例,根据至少一个自动化测试专家的判断结果,确定测试用例对应的自动化分值;针对于每一个测试用例,根据测试用例对应的自动化分值及测试对象,判断测试用例是否为自动化测试用例,其中测试对象包括核心业务模块或使基础业务模块;获取判断结果为是的至少一。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1