接口覆盖测试方法、系统、计算机设备和存储介质技术方案

技术编号:20362892 阅读:27 留言:0更新日期:2019-02-16 16:32
本发明专利技术涉及网络数据处理技术领域,尤其涉及一种接口覆盖测试方法、系统、计算机设备和存储介质。一种接口覆盖测试方法,包括如下步骤:调取任务组,根据预设的时间阈值对任务组中的任务进行分类剥离,并按生成时间排序构成一组定时任务;将定时任务的业务代码进行分类组装并分配到业务框架中,业务框架获取所述业务代码并进行数据处理,生成接口测试的配置文件;调用处理后的所述业务代码和所述配置文件,执行接口测试,生成测试结果,获取测试结果并判断任务执行是否成功。本发明专利技术通过任务组进行定时筛分,启用业务框架对业务代码进行整理生成配置文件,从而达到对API接口和代码接口的全覆盖。

【技术实现步骤摘要】
接口覆盖测试方法、系统、计算机设备和存储介质
本专利技术涉及网络数据处理
,尤其涉及一种接口覆盖测试方法、系统、计算机设备和存储介质。
技术介绍
软件测试(英语:SoftwareTesting),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。目前,在软件测试开发过程中,针对模拟线上运行的测试方法,通常使用测试工具。通过运用测试工具,可以达到提高测试效率的目的。测试工具的发展,大大提高了软件测试的自动化程度,让测试人员从繁琐和重复的测试活动中解脱出来,专心从事有意义的测试设计等活动。采用自动比较技术,还可以自动完成测试用例执行结果的判断,从而避免人工比对存在的疏漏问题。但是,目前通常使用的测试工具,对于API(应用程序编程)接口一般使用Jmeter等工具测试;对于非标准接口,一般直接编写代码进行测试;测试工具不能同时兼容API接口和未提供标准接口的代码接口,兼容性低,需要依赖人工介入调整,且测试用时较长和效率低。
技术实现思路
有鉴于此,有必要针对现有测试过程中API接口和代码接口兼容性低的问题,提供一种接口覆盖测试方法、系统、计算机设备和存储介质。一种接口覆盖测试方法,包括如下步骤:调取任务组,根据预设的时间阈值对任务组中的任务按照生成时间的时间节点进行分类剥离,并以生成时间排序构成一组定时任务;将所述定时任务的业务代码按照API数据和代码数据进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理后生成对接口进行接口测试的配置文件;调用处理后的所述业务代码和所述配置文件,执行接口测试后通过识别所述业务框架中的数据后生成测试结果并将其写入数据库;从所述数据库中获取测试结果并判断所述定时任务的执行是否成功。在其中一个实施例中,所述调取任务组,根据预设的时间阈值对任务组中的任务进行分类剥离,并按生成时间排序构成一组定时任务包括:通过Jenkins工具识别所述时间阈值后生成任务的时间节点,并设置一查询脚本对所述时间节点进行查询,调用所述查询脚本连接所述Jenkins工具对分类剥离后的任务的时间节点进行监控,当所述时间节点与所述时间阈值一致时,继续对所述任务组进行分类剥离,当所述时间节点与所述时间阈值不一致时,重新修订所述时间阈值。在其中一个实施例中,在所述将所述定时任务的业务代码进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理,生成接口类型测试的配置文件包括:对所述业务代码进行数据的初始化处理得到接口识别代码;将所述接口识别代码输入到所述配置文件中,所述配置文件内包含接口种类、生成时间、存储位置;所述业务框架对所述接口识别代码进行封装构成一接口识别框架,所述接口识别框架用于对所述接口的类型进行识别。在其中一个实施例中,所述执行接口测试包括:启动所述业务框架中的主类main()方法对所述配置文件进行读取,并对所有过程数据进行清洗、初始化;调用所述业务框架中的各个子类,采用子类setup()方法对经过所述主类main()方法清洗、初始化后得到的数据进行再次清洗,并进行接口测试,得到相应子类的测试结果;在所述主类main()方法中,使用HTMLTestRunner工具把所述子类的测试结果进行整合,并以HTML格式输出整合结果。在其中一个实施例中,所述从所述数据库中获取测试结果,包括:从所述数据库中读取原始JMeter测试脚本,对所述原始JMeter测试脚本进行解析,并将所述原始JMeter测试脚本中的测试场景分离出来;获取所述定时任务中与所述原始JMeter测试脚本相互关联的测试场景,用所述与原始JMeter测试脚本相互关联的测试场景替换所述原始JMeter测试脚本中分离出来的测试场景后生成新的JMeter测试脚本;根据所述新的JMeter测试脚本对所述业务框架中的数据进行识别得出测试结果。在其中一个实施例中,在所述主类main()方法对所述配置文件进行读取过程中,所述主类main()方法装载需要执行的子类到测试套件中进行顺序调用;所述测试套件是测试用例的集合,任意一个所述测试套件包括一组测试用例;若一组测试用例中的任意两个测试用例在业务场景上有依赖关系,则将所述两个测试用例放到一个测试套件中执行。在其中一个实施例中,若所述定时任务执行成功,则通过HTMLTestRunner工具中的HTML表格将所述定时任务执行成功的信息传递到客户端,所述客户端通过访问带有所述HTML表格的页面获知所述定时任务执行成功的信息;若所述定时任务执行失败,则启动所述业务框架重新生成新配置文件。一种接口覆盖测试系统,包括如下单元:任务排序单元,设置为调取任务组、根据预设的时间阈值对任务组中的任务按照生成时间的时间节点进行分类剥离,并以生成时间排序构成一组定时任务;任务处理单元,设置为将所述定时任务的业务代码按照API数据和代码数据进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理后生成对接口进行接口测试的配置文件;结果生成单元,设置为调用处理后的所述业务代码和所述配置文件,执行接口测试后通过识别所述业务框架中的数据后生成测试结果并将其写入数据库;结果判断单元,设置为从所述数据库中获取测试结果并判断所述定时任务的执行是否成功。一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被一个或多个所述处理器执行时,使得一个或多个所述处理器执行上述接口覆盖测试方法的步骤。一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个所述处理器执行上述接口覆盖测试方法的步骤。上述接口覆盖测试方法、装置、计算机设备和存储介质,包括调取任务组,根据预设的时间阈值对任务组中的任务按照生成时间的时间节点进行分类剥离,并以生成时间排序构成一组定时任务;将所述定时任务的业务代码按照API数据和代码数据进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理后生成对接口进行接口测试的配置文件;调用处理后的所述业务代码和所述配置文件,执行接口测试后通过识别所述业务框架中的数据后生成测试结果并将其写入数据库;从所述数据库中获取测试结果并判断所述定时任务的执行是否成功。本技术方案针对现有测试过程中API接口和代码接口兼容性低,需要借助人工手段进行调整的问题,通过任务组进行定时筛分,启用业务框架对业务代码进行整理生成配置文件,从而达到对API接口和代码接口的全覆盖。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。图1为本专利技术的一种接口覆盖测试方法的整体流程图;图2为本专利技术的一种接口覆盖测试方法中的任务排序过程示意图;图3为本专利技术的一种接口覆盖测试方法中的接口测试过程的流程图;图4为本专利技术的一种接口覆盖测试系统的结构图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施本文档来自技高网...

【技术保护点】
1.一种接口覆盖测试方法,其特征在于,包括:调取任务组,根据预设的时间阈值对任务组中的任务按照生成时间的时间节点进行分类剥离,并以生成时间排序构成一组定时任务;将所述定时任务的业务代码按照API数据和代码数据进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理后生成对接口进行接口测试的配置文件;调用处理后的所述业务代码和所述配置文件,执行接口测试后通过识别所述业务框架中的数据后生成测试结果并将其写入数据库;从所述数据库中获取测试结果并判断所述定时任务的执行是否成功。

【技术特征摘要】
1.一种接口覆盖测试方法,其特征在于,包括:调取任务组,根据预设的时间阈值对任务组中的任务按照生成时间的时间节点进行分类剥离,并以生成时间排序构成一组定时任务;将所述定时任务的业务代码按照API数据和代码数据进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理后生成对接口进行接口测试的配置文件;调用处理后的所述业务代码和所述配置文件,执行接口测试后通过识别所述业务框架中的数据后生成测试结果并将其写入数据库;从所述数据库中获取测试结果并判断所述定时任务的执行是否成功。2.根据权利要求1所述的接口覆盖测试方法,其特征在于,所述调取任务组,根据预设的时间阈值对任务组中的任务进行分类剥离,并按生成时间排序构成一组定时任务,包括:通过Jenkins工具识别所述时间阈值后生成任务的时间节点,并设置一查询脚本对所述时间节点进行查询,调用所述查询脚本连接所述Jenkins工具对分类剥离后的任务的时间节点进行监控,当所述时间节点与所述时间阈值一致时,继续对所述任务组进行分类剥离,当所述时间节点与所述时间阈值不一致时,重新修订所述时间阈值。3.根据权利要求1所述的接口覆盖测试方法,其特征在于,在所述将所述定时任务的业务代码进行分类组装并分配到业务框架中,所述业务框架获取所述业务代码并进行数据处理,生成接口类型测试的配置文件,包括:对所述业务代码进行数据的初始化处理得到接口识别代码;将所述接口识别代码输入到所述配置文件中,所述配置文件内包含接口种类、生成时间、存储位置;所述业务框架对所述接口识别代码进行封装构成一接口识别框架,所述接口识别框架用于对所述接口的类型进行识别。4.根据权利要求1所述的接口覆盖测试方法,其特征在于,所述执行接口测试包括:启动所述业务框架中的主类main()方法对所述配置文件进行读取,并对所有过程数据进行清洗、初始化;调用所述业务框架中的各个子类,采用子类setup()方法对经过所述主类main()方法清洗、初始化后得到的数据进行再次清洗,并进行接口测试,得到相应子类的测试结果;在所述主类main()方法中,使用HTMLTestRunner工具把所述子类的测试结果进行整合,并以HTML格式输出整合结果。5.根据权利要求1所述的接口覆盖测试方法,其特征在于,所述从所述数据库中获取测试结果,包括:从所述数据库中读取原始JMeter测...

【专利技术属性】
技术研发人员:刘琼李琦谢云
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1