The invention relates to a data processing device and a data processing method. The data processing apparatus according to the present invention includes: a drive generation unit for generating test drivers of APIs, a test drive representation for calling functions of APIs, a path generation unit for executing test paths and test path constraints for generating APIs based on symbols, and a test case generation unit for API-based applications. Test cases of APIs are generated by constraints of test drivers, test paths, and test paths, where the test paths generated by the path generation unit include multiple lines of API code, and the path generation unit is used to: when code including the callback function is found, the code including the callback function and the previous paths include The code is used as the test path for API. Using the data processing device and the data processing method according to the present invention, test cases can be automatically generated for the API of hybrid apps.
【技术实现步骤摘要】
数据处理装置和数据处理方法
本专利技术的实施例涉及数据处理领域,具体地涉及测试领域,更具体地涉及可以为单个应用程序编程接口API生成测试用例的数据处理装置和数据处理方法,为API序列生成测试用例的数据处理装置和数据处理方法,对单个API进行测试的数据处理装置和数据处理方法以及对API序列进行测试的数据处理装置和数据处理方法。
技术介绍
这个部分提供了与本专利技术有关的背景信息,这不一定是现有技术。如今,移动互联网随着智能手机和3G/4G网络的普及越来越繁荣。人们逐渐开始使用智能手机,并在智能手机上安装各种各样的应用程序(app)。混合app指的是能在不同的应用平台(例如,cordova平台和android平台等)上运行的app。在一般情况下,混合app的代码由两部分组成:网页部分的代码和本地部分的代码。其中,在不同应用平台上运行的混合app的网页部分的代码相同,而本地部分的代码不同。例如,对于在android平台上运行的混合app,可以使用JavaScript语言开发网页部分的代码,并可以使用java语言开发本地部分的代码。应用程序编程接口API是网页部分和本地部分之间的接口,可以用于调用本地部分的代码从而实现app的功能。在对混合app的API进行测试时,需要针对混合app的API生成测试用例。传统的方法中,测试者仅仅手工地测试混合app的API。也就是说,如果测试者想要对混合app的API进行白盒测试,由于现在缺乏自动生成测试用例的方法,他们通常手工地编写测试用例。此外,符号执行是本领域中一种常用的生成测试用例的方法,其可以用符号值代替真实值对程序进行 ...
【技术保护点】
1.一种数据处理装置,包括:驱动生成单元,用于生成应用程序编程接口API的测试驱动,所述测试驱动表示对所述API进行函数调用;路径生成单元,用于基于符号执行生成所述API的测试路径和所述测试路径的约束条件;以及测试用例生成单元,用于基于所述API的测试驱动、测试路径和所述测试路径的约束条件生成所述API的测试用例,其中,所述路径生成单元生成的测试路径包括所述API的多行代码,并且所述路径生成单元用于:当寻找到包括回调函数的代码时,将所述包括回调函数的代码及其之前的路径所包括的代码作为所述API的测试路径。
【技术特征摘要】
1.一种数据处理装置,包括:驱动生成单元,用于生成应用程序编程接口API的测试驱动,所述测试驱动表示对所述API进行函数调用;路径生成单元,用于基于符号执行生成所述API的测试路径和所述测试路径的约束条件;以及测试用例生成单元,用于基于所述API的测试驱动、测试路径和所述测试路径的约束条件生成所述API的测试用例,其中,所述路径生成单元生成的测试路径包括所述API的多行代码,并且所述路径生成单元用于:当寻找到包括回调函数的代码时,将所述包括回调函数的代码及其之前的路径所包括的代码作为所述API的测试路径。2.根据权利要求1所述的数据处理装置,其中,所述驱动生成单元包括:类型确定单元,用于确定所述API的一个或多个参数和每个参数的类型;以及处理单元,用于根据每个参数的类型生成所述API的测试驱动。3.根据权利要求1所述的数据处理装置,其中,所述路径生成单元包括:全局变量获取单元,用于将所述API在电子设备上运行以获取所述API的全局变量的真值;以及处理单元,用于根据所述全局变量的真值对可选的测试路径进行剪除以生成所述API的测试路径。4.根据权利要求1所述的数据处理装置,其中,所述路径生成单元包括处理单元,用于:当寻找到包括普通函数的代码并且所述普通函数包括符号变量时,对所述普通函数进行扩展以继续寻找所述API的测试路径。5.根据权利要求1所述的数据处理装置,其中,所述路径生成单元包括...
【专利技术属性】
技术研发人员:张沈斌,孙俊,皮冰锋,钟朝亮,
申请(专利权)人:富士通株式会社,
类型:发明
国别省市:日本,JP
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。