一种精准测试的实现方法

文档序号:10654470阅读:2561来源:国知局
一种精准测试的实现方法
【专利摘要】本发明公开了一种精准测试的实现方法,具体实现过程为:首先进行测试用例设计;生成并提高测试覆盖率;查找测试的漏测与测试范围评估错误;最后进行回归测试与冒烟测试。该一种精准测试的实现方法与现有技术相比,可以很大程度的增大版本测试的覆盖程度,并且从该工作过程中也锻炼了测试发现问题的能力和判断问题的分析能力,对产品内部程序的逻辑有更深刻的接触和了解,达到精准测试,减少不必要的工作量,保证产品质量,无高风险的测试漏洞,上线更稳定,实用性强,易于推广。
【专利说明】
一种精准测试的实现方法
技术领域
[0001]本发明涉及产品测试技术领域,具体地说是一种实用性强、精准测试的实现方法。
【背景技术】
[0002]在传统的测试项目中,很多时候测试工作无法像开发一样有一个产品的产出,更大程度增加了对测试工作质量的考核,也就造成了对产品测试完成后无法有一个可靠依据去判断是都能够保证产品在市场中稳定的运行,测试过程中也必然存在着各种各样的问题和困难。精准测试可以将测试过程可视化,数字化,标准化,从而达到被测产品稳定性和质量。
[0003]传统测试项目中的问题:
1、测试范围不足、漏测。
[0004]经常出现开发改动测试不知道、或者测试范围评估不足以及测试人员对产品没有足够的了解等都会导致测试漏洞风险高,成为线上事故的导火线,并期望能够通过代码覆盖率工具提高覆盖度。
[0005]2、进度、时间赶,上线心里没底。
[0006]测试:“时间太紧,感觉没测试全就上线,再有几天就好了。”时间紧迫,根本无法规划自己的测试思路和范围,感觉自己没有测全,心里没有底儿。如果可以有工具帮助做测试的筛选和统计就好了,通过代码覆盖率判断产品是否能够达到上线标准。
[0007]3、测试回归范围大、成本高。
[0008]有时候开发给出的回归范围太大,导致测试回归测试成本很高。时间上和人员上都需要大量的资源投入,还是希望能够通过代码覆盖率工具做到精准测试,从而降低不必要资源的投入,提高工作的效率。
[0009 ] 4、测试与开发关系沟通问题。
[0010]测试和开发在后期交流中因人为交际因素往往产生各种不可预计的状况。
[0011]基于此,在对某一项目整理出来的事故范围进行分析后得知,整个事故中一大半都是因为开发与测试沟通或测试对业务不了解,遗漏而产生的故障。要避免这样的事故,首先需要把占比高的问题解决,就可以从很大程度上提升产品的质量。基于此,现设计了一种精准测试的实现方法。

【发明内容】

[0012]本发明的技术任务是针对以上不足之处,提供一种实用性强、精准测试的实现方法。
[0013]—种精准测试的实现方法,具体实现过程为:
首先进行测试用例设计;
生成并提高测试覆盖率;
查找测试的漏测与测试范围评估错误; 最后进行回归测试与冒烟测试。
[0014]所述测试用例设计是指采用边界值分析法、正交分析、因果图以及等价类划分的方法进行测试用例的设计。
[0015]上述测试用例设计过程中,对于输入框字符长度有限制的采用限制字符数的边界值进行测试用例设计;对于搜索项进行因果图方法设计测试用例;对于列表筛选进行正交分析法进行测试用例的设计;根据用户的体验习惯进行探索性测试;其具体设计过程包括:
正向设计,包括采用特性树的方式进行产品业务分析、通过分层分析和复杂代码识别的方式进行产品代码分析;
测试技术,包括采用边界值分析法、错误推测的方式进行测试设计,设置性能测试和压力测试的测试类型;
逆向设计,即进行缺陷分析,包括缺陷的触发条件、问题根源和检测方法。
[0016]生成覆盖率是指使用覆盖率工具进行黑盒测试,具体为:
对待测代码进行插粧;
按模块进行黑盒测试;
获得生成代码覆盖率原始数据文件;
将原始数据文件进行处理并生成最终的测试报告。
[0017]提高覆盖率的具体过程为:执行测试用例,一个模块的测试用例执行完毕后,对该模块测试完成后生成的代码覆盖率进行分析,对没有覆盖到的代码进行进一步的分析,即确定该分支是否未被覆盖或是开发的冗余代码,对没有覆盖到的分支补充测试用例并再次测试,生成覆盖率报告直到所有逻辑代码都被执行到。
[0018]通过覆盖率报告、测试用例、代码、模块的追溯关联,查看某条代码对应的测试用例,完成测试的漏测检查,查找测试范围评估错误。
[0019]所述回归测试与冒烟测试是指:首先根据之前步骤生成的覆盖率的报告,通过测试用例、代码、模块的追溯关联,与要回归的版本进行比对,分析出开发改动所影响最大的回归测试用例;同时新迭代的冒烟测试也根据之前的版本分析的影响范围作为测试的依据。
[0020]本发明的一种精准测试的实现方法,具有以下优点:
本发明的一种精准测试的实现方法,可以很大程度的增大版本测试的覆盖程度,并且从该工作过程中也锻炼了测试发现问题的能力和判断问题的分析能力,对产品内部程序的逻辑有更深刻的接触和了解,达到精准测试,减少不必要的工作量,保证产品质量,无高风险的测试漏洞,上线更稳定,实用性强,易于推广。
【附图说明】
[0021 ]附图1为本发明的测试设计示意图。
[0022]附图2为本发明的覆盖率具体执行示意图。
【具体实施方式】
[0023]下面结合附图及具体实施例对本发明作进一步说明。
[0024]如附图1所示,本发明提供一种精准测试的实现方法,具体实现过程为: 首先进行测试用例设计;
生成并提高测试覆盖率;
查找测试的漏测与测试范围评估错误;
最后进行回归测试与冒烟测试。
[0025]测试准备期,基于完善的测试分析及测试用例的设计,为执行期的精准测试打下基础。
[0026]采用常规的边界值分析法,正交分析,因果图以及等价类划分等多种方法进行测试用例的设计,例如:
对于输入框字符长度有限制的采用限制字符数的边界值进行测试用例设计;
对于搜索项进行因果图方法设计测试用例;
对于列表筛选进行正交分析法进行测试用例的设计;
根据用户的体验习惯进行探索性测试等。
[0027]其具体设计过程如附图1所示:
正向设计,包括采用特性树的方式进行产品业务分析、通过分层分析和复杂代码识别的方式进行产品代码分析;
测试技术,包括采用边界值分析法、错误推测的方式进行测试设计,设置性能测试和压力测试的测试类型;
逆向设计,即进行缺陷分析,包括缺陷的触发条件、问题根源和检测方法。
[0028]如附图2所示,生成覆盖率是指使用基于主流开发语言的代码覆盖率工具,本发明以java的覆盖率工具e_a为例,进行黑盒测试,具体为:
对待测代码进行插粧;
按模块进行黑盒测试;
获得生成代码覆盖率原始数据文件;
将原始数据文件进行处理并生成最终的测试报告。
[0029]提高覆盖率的具体过程为:执行测试用例,一个模块的测试用例执行完毕后,对该模块测试完成后生成的代码覆盖率进行分析,对没有覆盖到的代码进行进一步的分析,即确定该分支是否未被覆盖或是开发的冗余代码,对没有覆盖到的分支补充测试用例并再次测试,生成覆盖率报告直到所有逻辑代码都被执行到。
[0030]在传统的测试中,开发人员改动某个功能后,因开发人员不知道该功能会影响多少其它的调用功能,导致在和测试交代改动功能时候,往往会出现遗漏,以至于测试范围评估错误,通过覆盖率报告、测试用例、代码、模块的追溯关联,测试人员可以明确的看出某条代码对应的测试用例,以至可以督促开发修改过程中更多的考虑一致性修改。
[0031]所述回归测试与冒烟测试是指:
正常的回归测试一般会被要求做全量的回归,但是因为时间紧等因素导致测试不全。精准测试根据之前生成的覆盖率的报告可以通过测试用例、代码、模块的追溯关联,与要回归的版本进行比对。分析出开发改动所影响最大的回归测试用例。新迭代的冒烟测试也可以根据之前的版本分析的影响范围作为测试的依据。
[0032]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种精准测试的实现方法的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。
【主权项】
1.一种精准测试的实现方法,其特征在于,具体实现过程为: 首先进行测试用例设计; 生成并提高测试覆盖率; 查找测试的漏测与测试范围评估错误; 最后进行回归测试与冒烟测试。2.根据权利要求1所述的一种精准测试的实现方法,其特征在于,所述测试用例设计是指采用边界值分析法、正交分析、因果图以及等价类划分的方法进行测试用例的设计。3.根据权利要求2所述的一种精准测试的实现方法,其特征在于,上述测试用例设计过程中,对于输入框字符长度有限制的采用限制字符数的边界值进行测试用例设计;对于搜索项进行因果图方法设计测试用例;对于列表筛选进行正交分析法进行测试用例的设计;根据用户的体验习惯进行探索性测试;其具体设计过程包括: 正向设计,包括采用特性树的方式进行产品业务分析、通过分层分析和复杂代码识别的方式进行产品代码分析; 测试技术,包括采用边界值分析法、错误推测的方式进行测试设计,设置性能测试和压力测试的测试类型; 逆向设计,即进行缺陷分析,包括缺陷的触发条件、问题根源和检测方法。4.根据权利要求1所述的一种精准测试的实现方法,其特征在于,生成覆盖率是指使用覆盖率工具进行黑盒测试,具体为: 对待测代码进行插粧; 按模块进行黑盒测试; 获得生成代码覆盖率原始数据文件; 将原始数据文件进行处理并生成最终的测试报告。5.根据权利要求4所述的一种精准测试的实现方法,其特征在于,提高覆盖率的具体过程为:执行测试用例,一个模块的测试用例执行完毕后,对该模块测试完成后生成的代码覆盖率进行分析,对没有覆盖到的代码进行进一步的分析,即确定该分支是否未被覆盖或是开发的冗余代码,对没有覆盖到的分支补充测试用例并再次测试,生成覆盖率报告直到所有逻辑代码都被执行到。6.根据权利要求5所述的一种精准测试的实现方法,其特征在于,通过覆盖率报告、测试用例、代码、模块的追溯关联,查看某条代码对应的测试用例,完成测试的漏测检查,查找测试范围评估错误。7.根据权利要求5所述的一种精准测试的实现方法,其特征在于,所述回归测试与冒烟测试是指:首先根据之前步骤生成的覆盖率的报告,通过测试用例、代码、模块的追溯关联,与要回归的版本进行比对,分析出开发改动所影响最大的回归测试用例;同时新迭代的冒烟测试也根据之前的版本分析的影响范围作为测试的依据。
【文档编号】G06F11/36GK106021113SQ201610377242
【公开日】2016年10月12日
【申请日】2016年5月31日
【发明人】苏冉
【申请人】浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1