[发明专利]测试用例的生成方法及系统、计算机系统有效
申请号: | 201711485313.0 | 申请日: | 2017-12-29 |
公开(公告)号: | CN109992498B | 公开(公告)日: | 2022-12-02 |
发明(设计)人: | 郝旭;李金萍 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 吴梦圆 |
地址: | 100195 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试 生成 方法 系统 计算机系统 | ||
1.一种测试用例的生成方法,包括:
获取待测程序中包含的至少一条待测路径;
确定所述至少一条待测路径中每条待测路径包含的路径组合因子;
针对所述每条待测路径,在确定出其包含的路径组合因子后,获取与其包含的路径组合因子对应的目标测试用例;以及
基于所述目标测试用例生成相应待测路径的路径测试用例;
其中,所述确定所述至少一条待测路径中每条待测路径包含的路径组合因子包括:
确定所述至少一条待测路径中所述每条待测路径包含的语句、分支和条件;
其中,所述基于所述目标测试用例生成相应待测路径的路径测试用例,包括:将所述待测路径包含的路径组合因子对应的目标测试用例按照所述待测路径的路径组合因子的排列组合方式进行排列组合,生成相应所述待测路径的路径测试用例。
2.根据权利要求1所述的方法,其中,获取待测程序中包含的至少一条待测路径包括:
获取所述待测程序的程序结构框图;
从所述程序结构框图中识别出所述待测程序中包含的所有路径;或者
从所述程序结构框图中识别出所述待测程序中包含的所有路径中的至少一条路径;或者
基于所述待测程序的代码执行情况,从所述程序结构框图中识别出所述待测程序中包含的所有待执行的路径;或者
基于所述待测程序的代码执行情况,从所述程序结构框图中识别出所述待测程序中包含的所有待执行的路径中的至少一条路径。
3.根据权利要求2所述的方法,其中,获取所述待测程序的程序结构框图包括:
获取所述待测程序;
获取所述待测程序中包含的关键字;
基于获取的所述关键字对所述待测程序进行语法分析,得到以下结构中的一种或多种:顺序结构、分支结构和循环结构;以及
基于语法分析得到的结构画出所述待测程序的程序结构框图。
4.根据权利要求1所述的方法,其中,获取与其包含的路径组合因子对应的目标测试用例包括:
确定所述每条待测路径包含的路径组合因子中在所述待测程序的测试过程中已被测试过的路径组合因子;以及
获取测试所述已被测试过的路径组合因子时所执行的测试用例。
5.根据权利要求1所述的方法,其中,所述方法还包括:
读取所述待测程序的程序代码;
对所述程序代码进行关键字插桩;
在所述待测程序的测试过程中,将关键字覆盖前后中的测试用例记录为语句覆盖用例并保存;和/或
在所述待测程序的测试过程中,将关键字覆盖过程中的测试用例记录为分支覆盖用例并保存;和/或
在所述待测程序的测试过程中,将关键字部分覆盖中的测试用例记录为条件覆盖用例并保存。
6.根据权利要求5所述的方法,其中,所述方法还包括:
在保存所述语句覆盖用例和/或所述分支覆盖用例和/或所述条件覆盖用例之前,判断所述语句覆盖用例和/或所述分支覆盖用例和/或所述条件覆盖用例是否已保存过;以及
若尚未保存过,则保存所述语句覆盖用例和/或所述分支覆盖用例和/或所述条件覆盖用例。
7.根据权利要求5或6所述的方法,其中,所述方法还包括:
在保存所述语句覆盖用例和/或所述分支覆盖用例和/或所述条件覆盖用例的过程中,关联所述语句覆盖用例和/或所述分支覆盖用例和/或所述条件覆盖用例与所述待测程序中的线路的对应关系。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711485313.0/1.html,转载请声明来源钻瓜专利网。