本发明专利技术涉及测试流程改进,提供一种DNS自动化性能测试方法、装置、设备及介质。本发明专利技术通过将不同场景进行参数化组合得到多种不同的子场景参数组合,使得节省了大规模多场景DNS性能测试的时间成本与人力成本;通过预设数据查询函数自动获取相应的被查询数据并生成域名测试文件,而无需提前准备单一重复且繁多的数据文件以及文件数据操作,简化了测试流程;通过对多个子场景下的参数组合进行性能测试,实现了测试数据与业务逻辑完全分离,测试人员只需维护相应的配置参数的文件,而不需要对代码进行修改,大大减少了代码维护的成本,从而提高了性能测试的效率。此外,本发明专利技术还涉及区块链技术,域名测试文件可存储于区块链中。
DNS automatic performance test method, device, equipment and readable storage medium
【技术实现步骤摘要】
DNS自动化性能测试方法、装置、设备及可读存储介质
本专利技术涉及计算机网络
,尤其涉及一种DNS自动化性能测试方法、装置、设备及计算机可读存储介质。
技术介绍
域名系统(DNS,DomainNameSystem)为企业和开发者将易于管理识别的域名转换为计算机用于互连通信的数字IP地址,为互联网应用的高可用提供全局负载均衡功能,因此保证DNS服务高可用相当重要。在对DNS进行性能测试时,通常会开源工具模拟真实用户行为,进行大量DNS域名解析请求。在压测过程中,需要模拟大量多场景DNS的性能表现,如需要模拟不同用户并发请求数,不同的解析请求时长,不同的域名解析,不同的记录类型的子域名解析。总体来说DNS产品进行全面的性能测试会需要到几十种甚至上百种场景进行测试。当进行大批量多场景时若用传统的人工是手动操纵工具压测,显然是不现实的,不仅操作单一,繁琐。若用普遍的一般的自动化脚本去做,每一种场景对应一个自动化的脚本,这样大量的脚本无疑会加大脚本维护和开发的成本,且每种场景的脚本相互独立要将数据进行收集汇总操作依然繁琐。上述种种情况均反映出现有DNS性能测试方式的测试效率低下的问题。
技术实现思路
本专利技术的主要目的在于提供一种DNS自动化性能测试方法、装置、设备及计算机可读存储介质,旨在解决现有DNS性能测试方式的测试效率低下的技术问题。为实现上述目的,本专利技术提供一种DNS自动化性能测试方法,所述DNS自动化性能测试方法包括以下步骤:获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合,其中,每一场景对应若干子场景;基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件;基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果。可选地,所述获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合的步骤包括:获取DNS的多场景信息,并使用预设处理函数对所述多场景信息进行处理后得到每一场景下的配置参数,以将所有场景下的配置参数汇总为所述多场景配置参数集合;将所述多场景配置参数集合中的每一配置参数的取值作为一取值集合,在各个取值集合之间使用笛卡尔积原理得到多种所述子场景参数组合,以随机抽象出每一场景所对应多个子场景的子场景参数组合,并汇总为多种所述子场景参数组合。可选地,所述基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件的步骤之前,还包括:搭建执行DNS性能测试所需的网络环境,并安装预设DNS压力测试工具;对所述网络环境与所述DNS压力测试工具进行检查,以确保所述网络环境与所述DNS压力测试工具的正常运行。可选地,所述基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件的步骤包括:在所述网络环境中进行域名添加操作,并生成基础解析记录;利用所述数据查询函数自动模拟域名解析请求,并根据当前所添加的域名以及所述基础域名记录生成所述被查询数据,以将所述被查询数据整合成所述域名测试文件,其中,所述域名测试文件存储于区块链中。可选地,所述基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果的步骤包括:生成每一所述子场景参数组合所对应的对象简谱文件,并使用加载有所述域名测试文件的DNS压力测试工具,逐一对各所述对象简谱文件执行DNS性能测试操作;直至所有所述对象简谱文件的DNS性能测试操作执行完成时,将收集到的所有子场景下的指定监控指标数据作为所述所有子场景下的DNS性能测试结果。可选地,所述直至所有所述对象简谱文件的DNS性能测试操作执行完成时,将收集到的所有子场景下的指定监控指标数据作为所述所有子场景下的DNS性能测试结果的步骤之后,还包括:将所述指定监控指标数据写入预设数据库;将所述数据库中的指定监控数据整合后进行可视化展示。可选地,所述基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果的步骤之后,还包括:接收针对各个子场景所创建的自定义性能判别函数,并基于所述自定义性能判别函数,对所述所有子场景下的DNS性能测试结果进行定制化性能分析。此外,为实现上述目的,本专利技术还提供一种DNS自动化性能测试装置,所述DNS自动化性能测试装置包括:参数组合生成模块,用于获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合,其中,每一场景对应若干子场景;测试文件生成模块,用于基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件;测试结果获取模块,用于基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果。可选地,所述参数组合生成模块包括:参数子集汇总单元,用于获取DNS的多场景信息,并使用预设处理函数对所述多场景信息进行处理后得到每一场景下的配置参数,以将所有场景下的配置参数汇总为所述多场景配置参数集合;参数组合抽象单元,用于将所述多场景配置参数集合中的每一配置参数的取值作为一取值集合,在各个取值集合之间使用笛卡尔积原理得到多种所述子场景参数组合,以随机抽象出每一场景所对应多个子场景的子场景参数组合,并汇总为多种所述子场景参数组合。可选地,所述DNS自动化性能测试装置还包括:环境初始化模块,用于搭建执行DNS性能测试所需的网络环境,并安装预设DNS压力测试工具;对所述网络环境与所述DNS压力测试工具进行检查,以确保所述网络环境与所述DNS压力测试工具的正常运行。可选地,所述测试文件生成模块包括:域名添加单元,用于在所述网络环境中进行域名添加操作,并生成基础解析记录;数据整合单元,用于利用所述数据查询函数自动模拟域名解析请求,并根据当前所添加的域名以及所述基础域名记录生成所述被查询数据,以将所述被查询数据整合成所述域名测试文件,其中,所述域名测试文件存储于区块链中。可选地,所述测试结果获取模块包括:测试操作执行单元,用于生成每一所述子场景参数组合所对应的对象简谱文件,并使用加载有所述域名测试文件的DNS压力测试工具,逐一对各所述对象简谱文件执行DNS性能测试操作;指本文档来自技高网...
【技术保护点】
1.一种DNS自动化性能测试方法,其特征在于,所述DNS自动化性能测试方法包括以下步骤:/n获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合,其中,每一场景对应若干子场景;/n基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件;/n基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果。/n
【技术特征摘要】
1.一种DNS自动化性能测试方法,其特征在于,所述DNS自动化性能测试方法包括以下步骤:
获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合,其中,每一场景对应若干子场景;
基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件;
基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子场景下的DNS性能测试结果。
2.如权利要求1所述的DNS自动化性能测试方法,其特征在于,所述获取域名系统DNS的多场景信息,从所述多场景信息中提取出对应的多场景配置参数集合,并根据所述多场景配置参数集合抽象出多种子场景参数组合的步骤包括:
获取DNS的多场景信息,并使用预设处理函数对所述多场景信息进行处理后得到每一场景下的配置参数,以将所有场景下的配置参数汇总为所述多场景配置参数集合;
将所述多场景配置参数集合中的每一配置参数的取值作为一取值集合,在各个取值集合之间使用笛卡尔积原理得到多种所述子场景参数组合,以随机抽象出每一场景所对应多个子场景的子场景参数组合,并汇总为多种所述子场景参数组合。
3.如权利要求1所述的DNS自动化性能测试方法,其特征在于,所述基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件的步骤之前,还包括:
搭建执行DNS性能测试所需的网络环境,并安装预设DNS压力测试工具;
对所述网络环境与所述DNS压力测试工具进行检查,以确保所述网络环境与所述DNS压力测试工具的正常运行。
4.如权利要求3所述的DNS自动化性能测试方法,其特征在于,所述基于预设数据查询函数自动模拟域名解析请求,并获取域名解析请求的被查询数据,以基于所述被查询数据生成DNS性能测试的域名测试文件的步骤包括:
在所述网络环境中进行域名添加操作,并生成基础解析记录;
利用所述数据查询函数自动模拟域名解析请求,并根据当前所添加的域名以及所述基础域名记录生成所述被查询数据,以将所述被查询数据整合成所述域名测试文件,其中,所述域名测试文件存储于区块链中。
5.如权利要求3所述的DNS自动化性能测试方法,其特征在于,所述基于所述域名测试文件与多种所述子场景参数组合,执行各个子场景下的DNS性能测试操作,以获取所有子...
【专利技术属性】
技术研发人员:冯嘉美,
申请(专利权)人:平安科技深圳有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。