CN111597101B - Sdk接入状态检测方法、计算机设备及计算机可读存储介质 - Google Patents

Sdk接入状态检测方法、计算机设备及计算机可读存储介质 Download PDF

Info

Publication number
CN111597101B
CN111597101B CN201910129064.4A CN201910129064A CN111597101B CN 111597101 B CN111597101 B CN 111597101B CN 201910129064 A CN201910129064 A CN 201910129064A CN 111597101 B CN111597101 B CN 111597101B
Authority
CN
China
Prior art keywords
sdk
interface
preset
parameters
data packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910129064.4A
Other languages
English (en)
Other versions
CN111597101A (zh
Inventor
吕赟杰
曲涛
张�杰
蒋毅
崔成迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN201910129064.4A priority Critical patent/CN111597101B/zh
Publication of CN111597101A publication Critical patent/CN111597101A/zh
Application granted granted Critical
Publication of CN111597101B publication Critical patent/CN111597101B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本公开提供了一种SDK接入状态检测方法,其特征在于,所述方法包括:在对测试机上数据包执行预设操作的过程中,获取所述数据包对应的SDK参数,其中,所述SDK参数包括当前所述测试机执行所述预设操作时调用SDK接口的调用顺序;对所述SDK参数进行检测,得到检测结果;根据所述检测结果,确定所述数据包接入所述SDK的接入状态。本公开还提供了一种计算机设备及一种计算机可读存储介质。

Description

SDK接入状态检测方法、计算机设备及计算机可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种SDK接入状态检测方法、计算机设备及计算机可读存储介质。
背景技术
软件开发工具包(Soffware Development Kit,简称为SDK)可以为游戏研发商解决接入用户登录、支付功能过程的流程繁琐、开发难度大等问题,达到快速上线游戏平台的目的。
目前,市场上SDK对接的游戏研发商很多,每个游戏研发商技术有差异导致游戏包接入SDK的效率低、通过率不高,且测试游戏包是否正确接入SDK时需要大量的测试人员手动验收。随着游戏种类的增多,现有技术中通过测试人员手动验收游戏的方式导致人力成本急剧增长,且影响准确率。此外,也存在部分公司对SDK接入进行自动检测,但准确性不够。
发明内容
本公开的目的是提供一种SDK接入状态检测方法、计算机设备及计算机可读存储介质,用于解决现有技术中对游戏包接入SDK的状态检测准确率低的缺陷。
本公开的一个方面提供了一种SDK接入状态检测方法,其特征在于,上述方法包括:在对测试机上数据包执行预设操作的过程中,获取上述数据包对应的SDK参数,其中,上述SDK参数包括当前上述测试机执行上述预设操作时调用SDK接口的调用顺序;对上述SDK参数进行检测,得到检测结果;根据上述检测结果,确定上述数据包接入上述SDK的接入状态。
根据本公开的实施例,上述对上述SDK参数进行检测,得到检测结果,包括:获取预设配置文件,根据上述预设配置文件确定上述测试机执行上述预设操作时需要调用的SDK接口的预设顺序;检测当前上述SDK接口的调用顺序与确定的上述SDK接口的预设顺序是否一致,得到检测结果。
根据本公开的实施例,上述SDK参数还包括上述SDK接口的接口参数,上述对上述SDK参数进行检测,得到检测结果,还包括:根据上述预设配置文件确定上述测试机执行上述预设操作时需要调用的SDK接口的预设标准参数;检测当前上述测试机执行上述预设操作时调用SDK接口的接口参数与确定的上述SDK接口的预设标准参数是否一致。
根据本公开的实施例,上述获取上述数据包对应的SDK参数,包括:获取当前上述测试机执行上述预设操作时发送的网络请求对应的上述SDK参数。
根据本公开的实施例,上述SDK接口的接口参数为上述网络请求的请求参数。
根据本公开的实施例,上述方法还包括:根据上述检测结果生成检测报告,其中,在上述检测结果表征检测未通过时,上述检测报告包括当前上述SDK接口中未通过检测的SDK接口和上述未通过检测的SDK接口对应的未通过原因。
根据本公开的实施例,上述方法还包括:解析上述数据包;获取预设文件列表,其中,上述预设文件列表中包括需要进行比对的文件名称;根据上述预设文件列表,将解析后的数据包与预设标准对比包进行对比,其中,上述预设标准对比包中包括的文件为正确接入上述SDK的文件。
根据本公开的实施例,上述获取预设文件列表,包括:确定上述解析后的数据包中记录的SDK版本号和SDK类型;根据上述SDK版本号和上述SDK类型,检测上述解析后的数据包中是否有上述SDK的配置信息;若检测出上述解析后的数据包中有上述SDK的配置信息,则获取上述预设文件列表。
本公开的再一个方面提供了一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,上述处理器执行上述计算机程序时用于实现如上任一项所述的方法的步骤。
本公开的又一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,上述计算机程序被处理器执行时用于实现如上任一项所述的方法的步骤。
本公开提供的SDK接入状态检测方法,在对测试机上安装的数据包执行预设操作的过程中,获取数据包对应的SDK参数,该SDK参数包括当前测试机执行预设操作时所调用SDK接口的接口顺序,在对测试机上安装的数据包执行完所有的预设操作之后,可以对当前获取的SDK参数进行检测,进而根据检测结果确定数据包是否正确接入了SDK。本公开的实施例通过自动抓取当前SDK接口的调用顺序,并自动对抓取的当前SDK接口的调用顺序进行检测,可以避免现有技术中对游戏包接入SDK的状态检测准确率低的缺陷。并且,本公开的实施例还可以生成检测结果,工作人员可以根据检测结果快速定位问题并对数据包进行修改,进而可以提高数据包接入SDK的正确性。
附图说明
图1示意性示出了根据本公开实施例的SDK接入状态检测方法的流程图;
图2示意性示出了本公开实施例的检测报告的示意图;
图3示意性示出了根据本公开实施例的静态检测报告的示意图;
图4示意性示出了根据本公开实施例的动态检测报告的示意图;
图5示意性示出了根据本公开另一实施例的SDK接入状态检测方法的流程图;
图6示意性示出了根据本公开实施例的SDK接入状态检测系统的框图;以及
图7示意性示出了根据本公开实施例的适于实现SDK接入状态检测方法的计算机设备的硬件架构示意图。
具体实施方式
为了使本公开的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本公开进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本公开,并不用于限定本公开。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开提供的SDK接入状态检测方法,在对测试机上安装的数据包执行预设操作的过程中,获取数据包对应的SDK参数,该SDK参数包括当前测试机执行预设操作时所调用SDK接口的接口顺序,在对测试机上安装的数据包执行完所有的预设操作之后,可以对当前获取的SDK参数进行检测,进而根据检测结果确定数据包是否正确接入了SDK。本公开的实施例通过自动抓取当前SDK接口的调用顺序,并自动对抓取的当前SDK接口的调用顺序进行检测,可以避免现有技术中对游戏包接入SDK的状态检测准确率低的缺陷。并且,本公开的实施例还可以生成检测结果,工作人员可以根据检测结果快速定位问题并对数据包进行修改,进而可以提高数据包接入SDK的正确性。
图1示意性示出了根据本公开实施例的SDK接入状态检测方法的流程图。
如图1所示,该SDK接入状态检测方法可以包括步骤S101~步骤S103,其中:
步骤S101,在对测试机上数据包执行预设操作的过程中,获取所述数据包对应的SDK参数,其中,所述SDK参数包括当前所述测试机执行所述预设操作时调用SDK接口的调用顺序。
需要说明的是,本公开的实施例可以应用在PC端,如台式电脑、笔记本电脑、平板电脑等,PC端上可以安装有检测工具;测试机可以包括移动端如手机,测试机上可以安装有数据包,例如游戏包。
下面以数据包为游戏包为例,详细解释SDK。具体地,SDK是集成了用户登录、充值通道、社区功能、社交分享功能、数据后台统计功能等的一个功能模块,手游厂商需要将这个功能模块植入到自己的游戏里,接入SDK后游戏厂商和手游渠道都要对SDK包进行测试,测试通过才能上线。本公开的实施例中的SDK可以包括但不限于注册SDK、登录SDK、支付SDK等等。
根据本公开的实施例,预设操作可以包括多个操作,在对测试机上数据包执行预设操作的过程中,可以是在测试人员对测试机上安装的数据包执行预设操作的过程中,也可以是在测试机自动对该数据包执行预设操作的过程中。例如,数据包为游戏包,预设操作包括以下两个流程中的所有操作,第一个流程中可以包括:打开游戏、注册新账号、完成新手流程并创建角色、购买商品进入支付页面、返回商店、购买商品进入支付页面、关闭游戏;第二个流程中的预设操作可以包括:打开游戏、使用前一轮注册的账号登录、进入游戏、购买商品进入支付页面、支付成功、关闭游戏,则在对测试机上数据包执行预设操作的过程中可以是在对测试机上数据包执行上述两个流程的过程中。
在本公开的实施例中,获取所述数据包对应的SDK参数,可以包括:获取当前所述测试机执行所述预设操作时发送的网络请求对应的所述SDK参数。其中,测试机每执行一个预设操作便会向对应的SDK接口发送一个网络请求,由于预设操作包括多个,测试机执行预设操作时发送的网络请求也可以包括多个。
例如,假设预设操作只包括上述实施例中的第一个流程,在一个流程中,对测试机上的游戏包执行打开游戏操作,测试机发送初始化网络请求,客户端抓取初始化网络请求对应的SDK初始化接口。对游戏包执行注册新账号操作,测试机发送登录网络请求,客户端抓取登录网络请求对应的SDK登录接口。对游戏包执行完成新手流程并创建角色操作,测试机发送创角网络请求,客户端抓取创角网络请求对应的SDK创角接口等等。那么,当前SDK接口的接口顺序为SDK初始化接口、SDK登录接口、SDK创角接口…等。
作为一种可选的实施例,本公开在执行动态测试环节(动态测试环节可以包括步骤S101~步骤S103)之前,可以先执行静态测试环节。具体地,该SDK接入状态检测方法还可以包括:解析所述数据包;获取预设文件列表,其中,所述预设文件列表中包括需要进行比对的文件名称;根据所述预设文件列表,将解析后的数据包与预设标准对比包进行对比,其中,所述预设标准对比包中包括的文件为正确接入所述SDK的文件。
根据本公开的实施例,预设标准对比包可以为正确接入SDK的数据包,该预设标准对比包中包括的文件为正确接入SDK的文件。预设文件列表中列出了需要进行对比的文件名称,即列出了需要将解析后数据包中的哪些文件和预设标准对比包中的哪些文件进行对比。
例如,预设文件列表为:smail、AndroidManifes、res、assests、lib,则可以将解析后数据包中的smail文件与预设标准对比包中的smail文件进行对比,将解析后数据包中的AndroidManifes文件与预设标准对比包中的AndroidManifes文件进行对比,将解析后数据包中的res文件与预设标准对比包中的res文件进行对比,将解析后数据包中的assests文件与预设标准对比包中的assests文件进行对比,将解析后数据包中的lib文件与预设标准对比包中的lib文件进行对比。
需要说明的是,在上述静态测试环节中的对比操作结束之后,还可以生成对比结果。在对比结果表征对比通过时,表明通过静态测试环节。在对比结果表征对比不通过时,表明未通过静态测试环节,此时对比结果中可以包括解析后数据包中未通过对比的文件和未通过对比的文件对应的未通过原因。例如,未通过对比的文件为jar文件,未通过原因为:jar包缺少com\bsgamesdk\android\helper\h.class文件。进一步,工作人员可以根据对比结果快速定位出数据包中出现问题的文件,并根据未通过原因对未通过对比的文件进行修改。
作为一种可选的实施例,在静态测试环节中,本公开的还可以判断数据包是否加入了SDK。具体地,所述获取预设文件列表,可以包括:确定所述解析后的数据包中记录的SDK版本号和SDK类型;根据所述SDK版本号和所述SDK类型,检测所述解析后的数据包中是否有所述SDK的配置信息;若检测出所述解析后的数据包中有所述SDK的配置信息,则获取所述待对比文件列表。若检测到解析后数据包中配置有与SDK版本号和SDK类型对应的配置信息,则可以表明数据包接入了SDK。其中,SDK版本号和SDK类型可以记录在smail文件中。根据本公开的实施例,在表明数据包接入了SDK之后,可以执行静态测试环节的后续操作,例如获取预设文件列表。
步骤S102,对所述SDK参数进行检测,得到检测结果。
其中,所述对所述SDK参数进行检测,得到检测结果,可以包括:获取预设配置文件,根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设顺序;检测当前所述SDK接口的调用顺序与确定的所述SDK接口的预设顺序是否一致,得到检测结果。其中,SDK接口的预设顺序为测试机执行预设操作时正确调用的SDK接口的顺序。
根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设顺序可以包括至少两种方式:第一种方式为预设配置文件中预先设置了测试机执行预设操作时需要调用SDK接口的预设顺序,则在获取预设配置文件之后便可以直接获知该确定的SDK接口的预设顺序;第二方式为预设配置文件中设置配置参数,通过该配置参数可以确定出测试机执行预设操作时需要调用的SDK接口的预设顺序,例如配置参数为表名称,通过获取的表名称找到关联的数据表,该数据表中存储有测试机执行预设操作时需要调用的SDK接口的预设顺序。
进一步,可以检测当前SDK接口的调用顺序与确定的SDK接口的预设顺序是否一致,得到检测结果。例如,确定的SDK接口的预设顺序为:SDK初始化接口、SDK登录接口、SDK创角接口、SDK下单接口。获取的当前SDK接口的调用顺序为:SDK初始化接口、SDK登录接口、SDK创角接口、SDK登录接口。将上述两个顺序进行比较得到的检测结果为检测不通过。
作为一种可选的实施例,所述SDK参数还包括所述SDK接口的接口参数。其中,SDK接口的接口参数即为上述网络请求的请求参数。例如,结合上述示例,假设预设操作只包括上述实施例中的第一个流程,在一个流程中,对测试机上的游戏包执行打开游戏操作,测试机发送初始化网络请求,客户端抓取初始化网络请求对应的SDK初始化接口,并抓取SDK初始化接口的接口参数:sdk_type:3sdk_ver:1.6.5app_id:35channel_id:1server_id:39merchant_id:2。对游戏包执行注册新账号操作,测试机发送登录网络请求,客户端抓取登录网络请求对应的SDK登录接口,并抓取SDK登录接口的接口参数:基本参数:sdk_type:3sdk_ver:1.6.5app_id:35channel_id:1server_id:39merchant_id:2,关键参数:uid:64492205。对游戏包执行完成新手流程并创建角色操作,测试机发送创角网络请求,客户端抓取创角网络请求对应的SDK创角接口,并抓取SDK创角接口的接口参数:sdk_type:3sdk_ver:1.6.5app_id:35channel_id:1server_id:39merchant_id:2,关键参数:role_id:1role:路人甲,等等。那么,当前SDK接口的接口顺序为SDK初始化接口、SDK登录接口、SDK创角接口…等,当前SDK接口的接口参数即为上述提及的参数。
作为一种可选的实施例,所述对所述SDK参数进行检测,得到检测结果,还包括:根据所述配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设标准参数;检测当前所述测试机执行所述预设操作时调用SDK接口的接口参数与确定的所述SDK接口的预设标准参数是否一致。其中,预设标准参数为测试机执行预设操作时正确调用的SDK接口的参数。
根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设标准参数也可以包括至少两种方式:第一种方式为预设配置文件中预先设置了测试机执行预设操作时需要调用的SDK接口的预设标准参数,则在获取预设配置文件之后便可以直接获知该确定的SDK接口的预设标准参数;第二方式为预设配置文件中设置配置参数,通过该配置参数可以确定出测试机执行预设操作时需要调用的SDK接口的预设标准参数,例如配置参数为表名称,通过获取的表名称找到关联的数据表,该数据表中存储有测试机执行预设操作时需要调用的SDK接口的预设标准参数。
进一步,可以检测当前SDK接口的接口参数与确定的SDK接口的预设标准参数是否一致,得到检测结果。例如,当前SDK接口的接口参数包括当前SDK登录接口的接口参数和当前SDK下单接口的接口参数,确定的SDK接口的预设标准参数包括确定的SDK登录接口的预设标准参数和确定的SDK下单接口的预设标准参数,则可以将当前SDK登录接口的接口参数和确定的SDK登录接口的预设标准参数进行比对,将当前SDK下单接口的接口参数和确定的SDK下单接口的预设标准参数进行比较。
在当前SDK接口的调用顺序与确定的SDK接口的预设顺序一致,且当前SDK接口的接口参数与确定的SDK接口的预设标准参数一致时,检测结果表征检测通过。在当前SDK接口的调用顺序与确定的SDK接口的预设顺序不一致,和/或当前SDK接口的接口参数与确定的SDK接口的预设标准参数不一致时,检测结果表征检测不通过。
例如,SDK下单接口的预设接口参数为:基本参数:sdk_type:3sdk_ver:1.6.5app_id:35channel_id:1server_id:39merchant_id:2,关键参数:uid:64492205money:100game_money:100out_trade_no:test_out_trade_no_1514263645。但是抓取的SDK下单接口的接口参数为:sdk_type:3sdk_ver:1.6.5app_id:35channel_id:1server_id:39merchant_id:2,则检测结果为检测不通过。
步骤S103,根据所述检测结果,确定所述数据包接入所述SDK的接入状态。
根据本公开的实施例,若检测结果表征检测通过,则表明数据包通过动态测试,由于本公开的实施例中优选为在通过静态测试环节之后才会执行动态测试环节,因此若检测结果包括检测通过结果,则可以表明数据包正确接入SDK。若检测结果表征检测不通过时,则表明数据包未通过动态测试。
作为一种可选的实施例,该SDK接入状态检测方法还可以包括:根据所述检测结果生成检测报告,其中,在所述检测结果表征检测未通过时,所述检测报告包括当前所述SDK接口中未通过检测的SDK接口和所述未通过检测的SDK接口对应的未通过原因。例如,未通过检测的SDK接口为:SDK下单接口,未通过原因为:没有调用。
优选地,该SDK接入状态检测方法还可以包括:根据对比结果和检测结果生成检测报告,其中,在对比结果表征对比未通过时,检测报告包括解析后的数据包中未通过对比的文件和未通过对比的文件对应的未通过原因,在检测结果表征检测未通过时,检测报告包括当前SDK接口中未通过检测的SDK接口和未通过检测的SDK接口对应的未通过原因。
根据本公开的实施例,检测报告可以包括五项:SDK接入检查结果、检查详情报告、接口及参数检查结果、接口调用列表、接口调用详细报告。其中,SDK接入检查结果和检查详情报告用于展示静态检测环节结果数据,接口及参数检查结果、接口调用列表和接口调用详细报告用于展示动态检测环节结果数据。
图2示意性示出了本公开实施例的检测报告的示意图。如图2所示,在图2中,SDK接入检查结果表征静态检测环节中对比未通过,检查项中的文件名为预设文件列表中的列出的文件名,检查结果为检查通过(又称为对比通过)或者检查未通过(对比未通过),错误说明为未通过对比的文件对应的未通过原因,比如未通过对比的文件为jar文件,未通过原因为:jar包缺少com\bsgamesdk\android\helper\h.class文件,jar包缺少com\bsgamesdk\android\api\bi.class文件。检查详情报告可以与图3中的数据相同,其中,图3中的数据为静态检测过程中实时显示在客户端界面上的数据。接口及参数检查结果表征动态检测环节中检测未通过,检查项为未通过检测的SDK接口,错误说明为未通过检测的SDK接口对应的未通过原因。如未通过检测的SDK接口为SDK创角接口,未通过原因为:没有调用。接口调用列表显示是当前SDK接口的关键参数(可以参见图4中的关键参数),接口调用详细报告包括当前SDK接口的基本参数和当前SDK接口的关键参数,具体可以参见图4中的数据,其中,图4中的数据为动态检测过程中实时显示在客户端界面上的数据。
图5示意性示出了根据本公开另一实施例的SDK接入状态检测方法的流程图。如图5所示,以数据包为安卓apk包为例,获取apk包并解析,从解析后的apk包中的smail文件中找到SDK版本号和SDK类型,然后判断apk包是否接入了SDK。判断标准为:先找到SDK版本号和SDK类型,然后判断解析后的apk包中是否配置了与SDK版本号和SDK类型对应的配置信息,若有则表明apk包已经接入了SDK。然后下载对应SDK的对比包(又称为预设标准对比包),进而将解析后的apk包与对比包对比检测接入资源正确性,若对比的文件均正确,则表明静态检测通过。在动态检测环节中,将apk包安装至测试设备(又称为测试机),开启PC端上安装的测试工具开始动态检查,此时需要保障测试机和PC端处于同一局域网中。然后在测试机上安装代理证书,并按照工具提示完成完整的动态测试流程(又称为预设操作),再通过测试工具抓取所有SDK相关接口的请求,判断请求参数(又称为SDK接口的接口参数)是否正确并判断请求发起顺序(又称为SDK接口的调用顺序)是否正确,若均正确则表明动态检测通过。进一步,将静态检测结果(又称为对比结果)和动态检测结果(又称为检测结果)进行汇总,然后生成检测报告。
需要说明的是,在静态检测环节过程中,资源对比内容可在线动态配置,比如可以通过配置预设文件列表,根据不同的对比文件对比不同的资源;如果任意一项不正确则静态检测不通过,需要修复后重新出apk包检查。在动态检测环节过程中,如果当前SDK接口的接口参数和当前SDK接口的调用顺序中任意一项不正确,则动态检测不通过,需要修复后重新出apk包检查。
本公开提供的SDK接入状态检测方法,在对测试机上安装的数据包执行预设操作的过程中,获取数据包对应的SDK参数,该SDK参数包括当前测试机执行预设操作时所调用SDK接口的接口顺序,在对测试机上安装的数据包执行完所有的预设操作之后,可以对当前获取的SDK参数进行检测,进而根据检测结果确定数据包是否正确接入了SDK。本公开的实施例通过自动抓取当前SDK接口的调用顺序,并自动对抓取的当前SDK接口的调用顺序进行检测,可以避免现有技术中对游戏包接入SDK的状态检测准确率低的缺陷。并且,本公开的实施例还可以生成检测结果,工作人员可以根据检测结果快速定位问题并对数据包进行修改,进而可以提高数据包接入SDK的正确性。
图6示意性示出了根据本公开实施例的SDK接入状态检测系统的框图。
如图6所示,该SDK接入状态检测系统600可以包括第一获取模块610、检测模块620和确定模块630,其中:
第一获取模块610用于在对测试机上数据包执行预设操作的过程中,获取所述数据包对应的SDK参数,其中,所述SDK参数包括当前所述测试机执行所述预设操作时调用SDK接口的调用顺序;
检测模块620对所述SDK参数进行检测,得到检测结果;
确定模块630根据所述检测结果,确定所述数据包接入所述SDK的接入状态。
作为一种可选的实施例,所述检测模块包括:处理单元,用于获取预设配置文件,根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设顺序;第一检测单元,用于检测当前所述SDK接口的调用顺序与确定的所述SDK接口的预设顺序是否一致,得到检测结果。
作为一种可选的实施例,所述SDK参数还包括所述SDK接口的接口参数,所述检测模块还包括:第一确定单元,用于根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设标准参数;第二检测单元,用于检测当前所述测试机执行所述预设操作时调用SDK接口的接口参数与确定的所述SDK接口的预设标准参数是否一致。
作为一种可选的实施例,所述第一获取模块还用于:获取当前所述测试机执行所述预设操作时发送的网络请求对应的所述SDK参数。
作为一种可选的实施例,所述SDK接口的接口参数为所述网络请求的请求参数。
作为一种可选的实施例,所述系统还包括:生成模块,用于根据所述检测结果生成检测报告,其中,在所述检测结果表征检测未通过时,所述检测报告包括当前所述SDK接口中未通过检测的SDK接口和所述未通过检测的SDK接口对应的未通过原因。
作为一种可选的实施例,所述系统还包括:解析模块,用于解析所述数据包;第二获取模块,用于获取预设文件列表,其中,所述预设文件列表中包括需要进行比对的文件名称;对比模块,用于根据所述预设文件列表,将解析后的数据包与预设标准对比包进行对比,其中,所述预设标准对比包中包括的文件为正确接入所述SDK的文件。
作为一种可选的实施例,所述第二获取模块可以包括:第二确定单元,用于确定所述解析后的数据包中记录的SDK版本号和SDK类型;第三检测单元,用于根据所述SDK版本号和所述SDK类型,检测所述解析后的数据包中是否有所述SDK的配置信息;获取单元,用于在检测出所述解析后的数据包中有所述SDK的配置信息的情况下,获取所述预设文件列表。
图7示意性示出了根据本公开实施例的适于实现SDK接入状态检测方法的计算机设备的硬件架构示意图。本实施例中,计算机设备700是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图7所示,计算机设备700至少包括但不限于:可通过系统总线相互通信连接存储器710、处理器720、网络接口730。其中:
存储器710至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器710可以是计算机设备700的内部存储模块,例如该计算机设备700的硬盘或内存。在另一些实施例中,存储器710也可以是计算机设备700的外部存储设备,例如该计算机设备700上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,存储器710还可以既包括计算机设备700的内部存储模块也包括其外部存储设备。本实施例中,存储器710通常用于存储安装于计算机设备700的操作系统和各类应用软件,例如SDK接入状态检测方法的程序代码等。此外,存储器710还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器720在一些实施例中可以是中央处理器(Central Processing Unit,简称为CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器720通常用于控制计算机设备700的总体操作,例如执行与计算机设备700进行数据交互或者通信相关的控制和处理等。本实施例中,处理器720用于运行存储器710中存储的程序代码或者处理数据。
网络接口730可包括无线网络接口或有线网络接口,该网络接口730通常用于在计算机设备700与其他计算机设备之间建立通信连接。例如,网络接口730用于通过网络将计算机设备700与外部终端相连,在计算机设备700与外部终端之间的建立数据传输通道和通信连接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,简称为GSM)、宽带码分多址(Wideband CodeDivision Multiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图7仅示出了具有部件710-730的计算机设备,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器710中的SDK接入状态检测方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器720)所执行,以完成本发明。
本实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的SDK接入状态检测方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的SDK接入状态检测方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种SDK接入状态检测方法,其特征在于,所述方法包括:
在对测试机上数据包执行预设操作的过程中,获取所述数据包对应的SDK参数,其中,所述SDK参数包括当前所述测试机执行所述预设操作时调用SDK接口的调用顺序,所述测试机每执行一个预设操作便向对应的SDK接口发送一个网络请求;
对所述SDK参数进行检测,得到检测结果;
根据所述检测结果,确定所述数据包接入所述SDK的接入状态。
2.根据权利要求1所述的方法,其特征在于,所述对所述SDK参数进行检测,得到检测结果,包括:
获取预设配置文件,根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设顺序;
检测当前所述SDK接口的调用顺序与确定的所述SDK接口的预设顺序是否一致,得到检测结果。
3.根据权利要求2所述的方法,其特征在于,所述SDK参数还包括所述SDK接口的接口参数,所述对所述SDK参数进行检测,得到检测结果,还包括:
根据所述预设配置文件确定所述测试机执行所述预设操作时需要调用的SDK接口的预设标准参数;
检测当前所述测试机执行所述预设操作时调用SDK接口的接口参数与确定的所述SDK接口的预设标准参数是否一致。
4.根据权利要求1所述的方法,其特征在于,所述获取所述数据包对应的SDK参数,包括:
获取当前所述测试机执行所述预设操作时发送的网络请求对应的所述SDK参数。
5.根据权利要求4所述的方法,其特征在于,所述SDK接口的接口参数为所述网络请求的请求参数。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述检测结果生成检测报告,其中,在所述检测结果表征检测未通过时,所述检测报告包括当前所述SDK接口中未通过检测的SDK接口和所述未通过检测的SDK接口对应的未通过原因。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
解析所述数据包;
获取预设文件列表,其中,所述预设文件列表中包括需要进行比对的文件名称;
根据所述预设文件列表,将解析后的数据包与预设标准对比包进行对比,其中,所述预设标准对比包中包括的文件为正确接入所述SDK的文件。
8.根据权利要求7所述的方法,其特征在于,所述获取预设文件列表,包括:
确定所述解析后的数据包中记录的SDK版本号和SDK类型;
根据所述SDK版本号和所述SDK类型,检测所述解析后的数据包中是否有所述SDK的配置信息;
若检测出所述解析后的数据包中有所述SDK的配置信息,则获取所述预设文件列表。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时用于实现权利要求1至8任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时用于实现权利要求1至8任一项所述方法的步骤。
CN201910129064.4A 2019-02-21 2019-02-21 Sdk接入状态检测方法、计算机设备及计算机可读存储介质 Active CN111597101B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910129064.4A CN111597101B (zh) 2019-02-21 2019-02-21 Sdk接入状态检测方法、计算机设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910129064.4A CN111597101B (zh) 2019-02-21 2019-02-21 Sdk接入状态检测方法、计算机设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN111597101A CN111597101A (zh) 2020-08-28
CN111597101B true CN111597101B (zh) 2023-09-08

Family

ID=72184859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910129064.4A Active CN111597101B (zh) 2019-02-21 2019-02-21 Sdk接入状态检测方法、计算机设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN111597101B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112068878B (zh) * 2020-09-08 2023-08-08 抖音视界有限公司 软件开发包状态检测方法、设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2486103A1 (en) * 2004-10-26 2006-04-26 Platespin Ltd. System and method for autonomic optimization of physical and virtual resource use in a data center
CN101466052A (zh) * 2007-12-21 2009-06-24 日立通讯技术株式会社 网络系统以及olt
CA2757871A1 (en) * 2010-11-29 2012-05-29 Research In Motion Limited Multiple-input device lock and unlock
CN104252594A (zh) * 2013-06-27 2014-12-31 贝壳网际(北京)安全技术有限公司 病毒检测方法和装置
WO2017193990A1 (zh) * 2016-05-12 2017-11-16 腾讯科技(深圳)有限公司 帐号登录方法和装置
CN107357732A (zh) * 2017-07-17 2017-11-17 广州爱九游信息技术有限公司 用户终端及软件开发工具包接入状态检测装置与方法
CN107924305A (zh) * 2015-09-02 2018-04-17 谷歌有限责任公司 软件开发和分发平台
CN107943688A (zh) * 2017-11-02 2018-04-20 北京奇虎科技有限公司 一种sdk检查方法、装置、终端设备及存储介质
CN108228361A (zh) * 2017-11-24 2018-06-29 五八有限公司 一种消息推送方法、终端及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8949792B2 (en) * 2009-08-18 2015-02-03 Adobe Systems Incorporated Methods and systems for data service development

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2486103A1 (en) * 2004-10-26 2006-04-26 Platespin Ltd. System and method for autonomic optimization of physical and virtual resource use in a data center
CN101466052A (zh) * 2007-12-21 2009-06-24 日立通讯技术株式会社 网络系统以及olt
CA2757871A1 (en) * 2010-11-29 2012-05-29 Research In Motion Limited Multiple-input device lock and unlock
CN104252594A (zh) * 2013-06-27 2014-12-31 贝壳网际(北京)安全技术有限公司 病毒检测方法和装置
CN107924305A (zh) * 2015-09-02 2018-04-17 谷歌有限责任公司 软件开发和分发平台
WO2017193990A1 (zh) * 2016-05-12 2017-11-16 腾讯科技(深圳)有限公司 帐号登录方法和装置
CN107357732A (zh) * 2017-07-17 2017-11-17 广州爱九游信息技术有限公司 用户终端及软件开发工具包接入状态检测装置与方法
CN107943688A (zh) * 2017-11-02 2018-04-20 北京奇虎科技有限公司 一种sdk检查方法、装置、终端设备及存储介质
CN108228361A (zh) * 2017-11-24 2018-06-29 五八有限公司 一种消息推送方法、终端及计算机可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
某型装备测试数据自动采集技术研究;周鹏飞;李国林;谢鑫;;现代电子技术(20);全文 *

Also Published As

Publication number Publication date
CN111597101A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN110445688B (zh) 基于数据收集的接口服务功能监测方法及系统
CN110704304B (zh) 一种应用程序测试方法、装置、存储介质和服务器
CN109726099B (zh) 一种应用灰度发布方法、装置及设备
WO2019052234A1 (zh) 产品算法自动化测试方法及应用服务器
CN110908909B (zh) 自动化测试方法、装置、存储介质及设备
CN109388569B (zh) 远程检测客户端环境异常的方法、测试服务器及存储介质
CN110532185B (zh) 测试方法、装置、电子设备和计算机可读存储介质
CN113448862B (zh) 软件版本测试方法、装置及计算机设备
CN111309602A (zh) 一种软件测试方法、装置及系统
US20160085664A1 (en) Generating a fingerprint representing a response of an application to a simulation of a fault of an external service
CN109067605B (zh) 一种存储子系统故障诊断方法、装置、终端及存储介质
CN111597101B (zh) Sdk接入状态检测方法、计算机设备及计算机可读存储介质
CN111176917B (zh) 一种cpu sst-bf功能稳定性测试方法、系统、终端及存储介质
CN111324537A (zh) 基于测试脚本的测试方法、装置及计算机设备
CN113535580B (zh) 一种cts测试方法、装置及测试设备
CN115454856A (zh) 多应用的安全检测方法、装置、介质及电子设备
CN115373929A (zh) 测试方法、装置、设备、可读存储介质及程序产品
CN112231159B (zh) 一种内存安装位置测试方法、系统、终端及存储介质
CN110134558B (zh) 一种服务器的检测方法和装置
CN108845932B (zh) 一种网络库的单元测试方法、装置、存储介质及终端
CN111782499A (zh) 测试用例生成方法及系统
CN113094281B (zh) 一种混合式App的测试方法及装置
CN115426301B (zh) 基于自生报文的设备检测方法、装置、设备和存储介质
CN110716855B (zh) 处理器指令集测试方法及装置
CN112650679B (zh) 一种测试校验方法、装置及计算机系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant