[发明专利]针对API接口的健壮性测试用例自动生成方法和装置在审
| 申请号: | 201310215398.6 | 申请日: | 2013-05-31 |
| 公开(公告)号: | CN103268285A | 公开(公告)日: | 2013-08-28 |
| 发明(设计)人: | 陈菊花;杨咏臻;丁世远 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 宋合成 |
| 地址: | 100085 北京市*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 针对 api 接口 健壮性 测试 自动 生成 方法 装置 | ||
1.一种针对API接口的健壮性测试用例自动生成方法,其特征在于,包括以下步骤:
获取待测API接口的源代码;
对所述源代码进行静态分析以获得静态扫描结果,并从静态扫描结果中获取所述API接口中函数的函数名、参数名、参数类型和返回值;
建立基本数据集合,其中,所述基本数据集合包括多个基本数据类型和每个基本数据类型对应的相关数据;
根据所述API接口中函数的参数类型和所述基本数据集合生成所述API接口的测试数据;以及
根据所述测试数据生成所述API接口的测试用例。
2.如权利要求1所述的方法,其特征在于,所述根据API接口中函数的参数类型和所述基本数据集合生成所述API接口的测试数据进一步包括:
如果所述API接口中函数的参数类型为基本类型,则查询所述基本数据集合直接生成基本类型对应的数据;以及
如果所述API接口中函数的参数类型是组合类型,则分别获得所述组合类型中的多个基本类型,并查询所述基本数据集合直接获取所述多个基本类型对应的多个数据,并对所述多个数据进行组合以生成所述组合类型对应的数据。
3.如权利要求1或2所述的方法,其特征在于,所述API接口的测试用例包括数据赋值代码和函数调用代码。
4.如权利要求1-3任一项所述的方法,其特征在于,所述函数调用代码根据所述函数名和参数名按照函数的调用格式组装获得。
5.如权利要求3所述的方法,其特征在于,所述数据赋值代码通过所述函数的参数类型和所述测试数据获得。
6.一种针对API接口的健壮性测试用例自动生成装置,其特征在于,包括:
源代码获取模块,用于获取待测API接口的源代码;
静态分析模块,用于对所述源代码进行静态分析以获得静态扫描结果,并从静态扫描结果中获取所述API接口中函数的函数名、参数名、参数类型和返回值;
基本数据集合建立模块,用于建立基本数据集合,其中,所述基本数据集合包括多个基本数据类型和每个基本数据类型对应的相关数据;
测试数据生成模块,用于根据所述API接口中函数的参数类型和所述基本数据集合生成所述API接口的测试数据;以及
测试用例生成模块,用于根据所述测试数据生成所述API接口的测试用例。
7.如权利要求6所述的装置,其特征在于,在所述API接口中函数的参数类型为基本类型时,所述测试数据生成模块查询所述基本数据集合直接获取基本类型对应的数据。
8.如权利要求6所述的装置,其特征在于,在所述API接口中函数的参数类型是组合类型时,所述测试数据生成模块分别获得所述组合类型中的多个基本类型,并查询所述基本数据集合直接获取所述多个基本类型对应的多个数据,以及对所述多个数据进行组合以获得所述组合类型对应的数据。
9.如权利要求7或8所述的装置,其特征在于,所述API接口的测试用例包括数据赋值代码和函数调用代码。
10.如权利要求9所述的装置,其特征在于,所述函数调用代码根据所述函数名和参数名按照函数的调用格式组装获得。
11.如权利要求9所述的装置,其特征在于,所述数据赋值代码通过所述函数的参数类型和所述测试数据获得。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310215398.6/1.html,转载请声明来源钻瓜专利网。





