CN110213117A - 一种业务测试方法及装置 - Google Patents
一种业务测试方法及装置 Download PDFInfo
- Publication number
- CN110213117A CN110213117A CN201810166742.XA CN201810166742A CN110213117A CN 110213117 A CN110213117 A CN 110213117A CN 201810166742 A CN201810166742 A CN 201810166742A CN 110213117 A CN110213117 A CN 110213117A
- Authority
- CN
- China
- Prior art keywords
- test
- services
- sub
- url
- domain name
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本文公开了一种业务测试方法及装置,此方法包括:客户端接收待测域名,将待测域名发送至属于预设测试环境的服务器;服务器获取对于待测域名的配置信息并加载;客户端确定待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据子服务的测试URL确定子服务测试脚本;运行每个子服务测试脚本,从服务器获取每个子服务的运行结果数据;判断每个子服务的功能是否符合预设条件。本发明使用业务真实环境作为测试基础环境,保证测试出的结果与真实环境一致,且不会影响线上业务;可以自动分析出待测域名需测试的子服务项目,减少人工繁琐的操作。
Description
技术领域
本申请涉及但不限于互联网技术领域,尤其涉及一种业务测试方法及装置。
背景技术
内容分发网络(Content Delivery Network,简称CDN)的业务涉及到的软件系统主要包括负载均衡(switch)系统和缓存(cache)系统。由于软件功能复杂多样,业务情景也变化各异,所以通常在真实环境下直接通过常规单个软件测试对业务进行测试的测试结果是不够可靠的。
现有CDN软件测试技术的核心点主要放置在软件在功能是否有故障(bug)上,在真实生产环境下需要考虑复杂网络发包、http协议、客户源站策略的不同对功能会产生什么影响,所以软件质量测试和功能bug测试是不能代表线上业务可用性的。例如:当客户有域名配置或者功能更新时,需要运维人员在生产环境下测试功能是否符合预期。首先配置完成之后,需要匹配真实环境,这显然是现在的软件测试不能完整模拟的,而且对于运维人员测试来说这个周期耗时较长,判断容易出现人为差错,重复验证的内容多,不能实现自动化,高效化,智能化。
发明内容
为了解决上述技术问题,本发明提供一种业务测试方法及装置。
本发明提供了一种业务测试方法,包括:
客户端接收待测域名,将所述待测域名发送至属于预设测试环境的服务器;
所述服务器获取对于所述待测域名的配置信息并加载;
所述客户端确定所述待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据所述子服务的测试URL确定子服务测试脚本;
运行每个子服务测试脚本,从所述服务器获取每个子服务的运行结果数据;
判断每个子服务的功能是否符合预设条件。
上述业务测试方法还具有以下特点:
所述接收待测域名之前,所述方法还包括:接收测试方式;
所述测试方式为黑盒测试方式时,所述确定每个子服务对应的测试统一资源定位符URL包括:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL。
上述业务测试方法还具有以下特点:
所述接收待测域名之前,所述方法还包括:接收测试方式;
所述测试方式为白盒测试方式时,所述确定每个子服务对应的测试统一资源定位符URL包括:
判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断所述子服务是否属于预设功能服务范围,如果是,根据所述待测域名的配置文件生成测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据所述待测域名生成预设格式的测试URL。
上述业务测试方法还具有以下特点:
所述提取所述历史测试用例中的测试URL作为此子服务对应的测试URL包括:确定所述待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL。
上述业务测试方法还具有以下特点:
所述根据所述待测域名的配置文件生成测试URL包括:在所述待测域名的配置文件中检索与所述子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据所述测试要素构成所述测试URL。
上述业务测试方法还具有以下特点:
确定所述待测域名的所有子服务的同时还确定所述待测域名的所有子服务的测试条件;
所述运行每个子服务测试脚本包括:根据所述子服务的测试条件运行所述子服务测试脚本。
上述业务测试方法还具有以下特点:
判断每个子服务的功能是否符合预设条件之后,所述方法还包括:
搜索所述待测域名的域名测试日志,判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将所述当前判断结果和所述历史判断结果合并。
上述业务测试方法还具有以下特点:
所述服务器包括负载均衡服务器和缓存服务器;
所述负载均衡服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于负载均衡的配置信息;
所述缓存服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于缓存方式的配置信息。
本发明提供的业务测试装置,包括:客户端和属于预设测试环境的服务器;所述客户端包括第一接收模块、确定模块、运行模块、获取模块,功能判断模块;
第一接收模块,用于接收待测域名,将所述第一接收模块发送至所述通信模块;
所述确定模块,用于确定所述待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据所述子服务的测试URL确定子服务测试脚本;
所述运行模块,用于运行每个子服务测试脚本;
所述通信模块,用于将所述待测域名发送至服务器,还用于从服务器获取每个子服务的运行结果数据;
所述功能判断模块,用于判断每个子服务的功能是否符合预设条件;
所述服务器,用于接收所述待测域名,获取对于所述待测域名的配置信息并加载。
上述业务测试装置还具有以下特点:
所述装置还包括:第二接收模块,用于接收测试方式;
所述确定模块,还用于在所述测试方式为黑盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL。
上述业务测试装置还具有以下特点:
所述装置还包括:第二接收模块,用于接收测试方式;
所述确定模块,还用于在所述测试方式为白盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断所述子服务是否属于预设功能服务范围,如果是,根据所述待测域名的配置文件生成测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据所述待测域名生成预设格式的测试URL。
上述业务测试装置还具有以下特点:
所述确定模块,还用于使用以下方法提取所述历史测试用例中的测试URL作为此子服务对应的测试URL:确定所述待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL。
上述业务测试装置还具有以下特点:
所述确定模块,还用于使用以下方法根据所述待测域名的配置文件生成测试URL:在所述待测域名的配置文件中检索与所述子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据所述测试要素构成所述测试URL。
上述业务测试装置还具有以下特点:
所述确定模块,还用于在确定所述待测域名的所有子服务的同时还确定所述待测域名的所有子服务的测试条件;
所述运行模块,还用于运行每个子服务测试脚本包括:根据所述子服务的测试条件运行所述子服务测试脚本。
上述业务测试装置还具有以下特点:
所述装置还包括:
搜索模块,用于搜索所述待测域名的域名测试日志;
处理模块,用于判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将所述当前判断结果和所述历史判断结果合并。
上述业务测试装置还具有以下特点:
所述服务器包括负载均衡服务器和缓存服务器;
所述负载均衡服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于负载均衡的配置信息;
所述缓存服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于缓存方式的配置信息。
本发明的优点包括:
1、使用业务真实环境作为测试基础环境,保证测试出的结果与真实环境一致,且不会影响线上业务。
2、可以自动分析出待测域名需测试的子服务项目,减少人工繁琐的操作。
3、支持黑盒测试和白盒测试,适应各种测试需求环境,相比与常规单一的功能测试本发明的测试范围为广。
4、通过日志数据库记录历史测试用例,重复测试相同域名时可以使用历史测试用例用于对比功能变化。
5、本发明支持的功能覆盖线上常见业务,将测试脚本框架化使后期维护更加简单,支持的功能覆盖线上常见业务,减少测试所需时间。
6、界面友好,依次显示待测域名的各个子服务的测试结果,方便用户查看。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是实施例中业务测试方法的流程图;
图2是实施例中业务测试装置的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
如图1所示,业务测试方法包括:
步骤1,接收待测域名;
步骤2,属于预设测试环境的服务器获取关于待测域名的配置信息并加载;
步骤3,确定待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;
步骤4,根据子服务的测试URL确定子服务测试脚本;
步骤5,运行每个子服务测试脚本,从服务器获取每个子服务的运行结果数据;
步骤6,判断每个子服务的功能是否符合预设条件。
其中,
本发明中还提供了业务测试软件界面,业务测试软件界面上具有测试方式的选择项(例如包括黑盒测试方式、白盒测试方式、测试日志展示),业务测试软件界面还具有测试开始按钮。用户在选择测试方式后,输入待测域名,或者,输入待测域名和测试URL,再点击测试开始按钮,业务测试软件开始根据上述方法运行。
在步骤1接收待测域名之前,此方法还包括:接收测试方式;
测试方式为黑盒测试方式时,步骤3中确定每个子服务对应的测试统一资源定位符URL具体包括:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为子服务的测试URL,如果否,判断是否已存储子服务的历史测试用例,如果是,提取历史测试用例中的测试URL作为此子服务对应的测试URL。
此黑盒测试方式的设置是为了贴合业务真实环境而设计的。一般情况下,域名的配置是多样的,而且域名的属性之间具有相关性,在某些情况下还具有强相关性,如果只是单一测试一个功能是不能满足上线测试要求的。例如:域名包括的子服务中包括缓存功能的子服务和防盗链功能子服务,而缓存功能的子服务在没开始执行前就会被防盗链功能子服务否定而无法执行。使用黑盒测试特性,可以去除子服务之间的相关性,对不同的子服务进行单独的测试,从而更加准确的反映业务情景。
测试方式为白盒测试方式时,步骤3中确定每个子服务对应的测试统一资源定位符URL包括:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为子服务的测试URL,如果否,判断子服务是否属于预设功能服务范围,如果是,根据待测域名的配置文件生成测试URL,如果否,判断是否已存储子服务的历史测试用例,如果是,提取历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据待测域名生成预设格式的测试URL,例如类似域名首页的URL:http://www.AA.com/index.html或者http:// www.BB.com/test。
例如:子服务的预设功能服务范围包括:ip防盗,refer防盗,时间戳防盗链等特殊功能。
其中,根据待测域名的配置文件生成测试URL包括:在待测域名的配置文件中检索与子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据测试要素构成测试URL。例如:对于时间戳防盗链子服务,在待测域名的配置文件中检索与此子服务相关的配置参数(例如配置参数为加密方式时,此加密方式为MD5),将检索到的配置参数组合成测试要素,根据测试要素构成测试URL。
提取历史测试用例中的测试URL作为此子服务对应的测试URL包括:确定待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL。
步骤2中服务器包括负载均衡服务器和缓存服务器。
步骤2中负载均衡服务器从中心服务器获取的配置信息是CDN业务在待测域名中关于负载均衡的配置信息,例如:域名为www.AA.com的负载均衡配置信息为最小连接数算法(后端cache服务上面的连接数最小最优先选择),而域名为www.BB.com的负载均衡配置信息为一致性HASH算法。
步骤2中缓存服务器可认为是多级的缓存服务器,例如包括一级缓存服务器和二级缓存服务器。缓存服务器从中心服务器获取的配置信息是CDN业务在待测域名中关于缓存方式的配置信息,例如:域名为www.AA.com的缓存配置信息为JPG格式的文件的缓存时限为一天,域名为www.BB.com的缓存配置信息为PNG格式的文件的缓存时限为两天。
本方法中由客户端(用于运行测试软件)、负载均衡服务器和缓存服务器构成的测试环境,可以使客户端从服务器上直接获取数据包,从而获知服务器在软件处理过程中产生的变化(例如文件头,文件大小,压缩缓存等),同时输出相应日志,这是现有技术中的进行单独功能测试的软件无法做到的。
本方法中步骤2中确定待测域名的所有子服务的同时还确定待测域名的所有子服务的测试条件;步骤5中运行每个子服务测试脚本具体包括;根据子服务的测试条件运行子服务测试脚本。例如:子服务的名称为执行缓存时,测试条件为执行缓存1小时,子服务的名称为不执行缓存时,测试条件为不执行缓存2小时。
步骤6判断每个子服务的功能是否符合预设条件之后,此方法还包括:搜索待测域名的域名测试日志,判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将当前判断结果和历史判断结果合并。
此方法还包括步骤7:记录测试日志,根据用户输入的测试日志查询请求检测历史测试日志并展示历史测试信息,此功能使用户在需要找回之前的测试用例或测试方法时提供可靠的历史记录。其中,将测试日志记录在数据库(例如使用mysql类型数据库)中,按照用户账号创建表格,表格内包括主键和字段,主键为域名,字段包括:待测域名配置,测试功能,测试结果,测试记录(头部信息),软件日志,文件MD5等。当新的用例有变化时可以同步修改数据库中的内容,还可以保存不同版本的测试日志,在后期需要时可以用于故障恢复。
图2是业务测试装置的结构图,此业务测试装置包括:客户端和属于预设测试环境的服务器;客户端包括第一接收模块、确定模块、运行模块、获取模块,功能判断模块。
第一接收模块,用于接收待测域名,将第一接收模块发送至通信模块;
确定模块,用于确定待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据子服务的测试URL确定子服务测试脚本;
运行模块,用于运行每个子服务测试脚本;
通信模块,用于将待测域名发送至服务器,还用于从服务器获取每个子服务的运行结果数据;
功能判断模块,用于判断每个子服务的功能是否符合预设条件;
服务器,用于接收待测域名,获取对于待测域名的配置信息并加载。
其中,
本装置还包括:第二接收模块,用于接收测试方式;
确定模块还用于在测试方式为黑盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为子服务的测试URL,如果否,判断是否已存储子服务的历史测试用例,如果是,提取历史测试用例中的测试URL作为此子服务对应的测试URL。
或者,
确定模块还用于在测试方式为白盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为子服务的测试URL,如果否,判断子服务是否属于预设功能服务范围,如果是,根据待测域名的配置文件生成测试URL,如果否,判断是否已存储子服务的历史测试用例,如果是,提取历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据待测域名生成预设格式的测试URL。
确定模块还用于使用以下方法提取历史测试用例中的测试URL作为此子服务对应的测试URL:确定待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL;还用于使用以下方法根据待测域名的配置文件生成测试URL:在待测域名的配置文件中检索与子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据测试要素构成测试URL。
确定模块还用于在确定待测域名的所有子服务的同时还确定待测域名的所有子服务的测试条件;运行模块还用于运行每个子服务测试脚本包括:根据子服务的测试条件运行子服务测试脚本。
本装置还包括:
搜索模块,用于搜索待测域名的域名测试日志;
处理模块,用于判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将当前判断结果和历史判断结果合并。
服务器包括负载均衡服务器和缓存服务器;
负载均衡服务器获取的对于待测域名的配置信息包括:CDN业务在待测域名中关于负载均衡的配置信息;
缓存服务器获取的对于待测域名的配置信息包括:CDN业务在待测域名中关于缓存方式的配置信息。
具体实施例一
域名www.123.com包括两个子服务,第一子服务为执行缓存(cache),此第一子服务的测试条件包括:操作对像为jpg格式文件,操作时长为1小时,第二子服务为不执行缓存(nocache),此第二子服务的测试条件为操作对像为png格式文件。
客户端运行测试软件并展示测试界面,用户选择黑盒测试方式,用户输入待测域名www.123.com,并点击测试开始按钮。
属于预设测试环境的负载均衡服务器和缓存服务器获取关于待测域名www.123.com的配置信息并加载。
测试软件确定待测域名www.123.com的所有子服务以及测试条件,具体包括上述第一子服务和上述第二子服务,第一子服务的测试条件包括:操作对像为jpg格式文件,操作时长为1小时,第二子服务的测试条件包括操作对像为png格式文件。
测试软件生成两个测试URL子框,用于输入两个子服务的测试URL,用户输入两个子服务的测试URL。测试软件还生成两个测试结果子框,用于输出两个子服务的测试结果。
用户未输入子服务的测试URL时,测试软件判断未接收到用户输入的测试URL后,判断是否已存储子服务的历史测试用例,如果是,提取历史测试用例中的测试URL作为此子服务对应的测试URL。例如:http://www.123.com/test.jpg和http://www.123.com/ test.png。
测试软件根据每个子服务的测试URL确定子服务测试脚本,第一子服务的测试脚本为cache.sh,第二子服务的测试脚本为nocache.sh。
根据第一子服务的测试条件执行第一子服务的子服务测试脚本,根据第二子服务的测试条件执行第二子服务的子服务测试脚本。
测试软件运行每个子服务测试脚本,从负载均衡服务器和缓存服务器获取每个子服务的运行结果数据。在界面上展示结果数据,包括测试结果(pass或者fail),测试记录(头部信息),软件日志,文件MD5等。
判断每个子服务的功能是否符合预设条件,符合时,将结果存入数据库。
具体实施例二
域名www.123.com包括时间戳防盗链子服务,且没有给出测试URL。此子服务的测试条件为拒绝访问此域名,例如:access_denyhttp://www.123.com。
客户端运行测试软件并展示测试界面,用户选择白盒测试方式,用户输入待测域名www.123.com,并点击测试开始按钮。
属于预设测试环境的负载均衡服务器和缓存服务器获取关于待测域名www.123.com的配置信息并加载。
测试软件确定用户未输入测试URL,判断子服务是否属于预设功能服务范围内,则需要根据待测域名的配置文件生成测试URL。
待测域名的配置文件包括:测试URL的请求格式为:http://www.123.com/$key/$ t/$uri,加密方式为MD5,协商密钥为secretkey=cdnkey,协商加密格式为$uri$secretkey$t。
根据待测域名的配置文件生成测试URL具体包括:
提取配置文件中的信息;
计算当前时间戳t=time.time()=1519646777;
计算key=MD5($uri$secretkey$t)=MD5(/1.jpgcdnkey1519646777)=6d5baf154e69724b4a68b721f5485bc5;
创建1.jgp作为uri。
最终生成测试URL为:
http://www.123.com/6d5baf154e69724b4a68b721f5485bc5/1519646777/1.jpg
根据此测试URL确定此子服务的子服务测试脚本。
根据此子服务的测试条件执行此子服务的子服务测试脚本。
测试软件运行每个子服务测试脚本,从负载均衡服务器和缓存服务器获取每个子服务的运行结果数据。在界面上展示结果数据,包括测试结果(pass或者fail),测试记录(头部信息),软件日志,文件MD5等。
判断每个子服务的功能是否符合预设条件,符合时,将结果存入数据库
本发明的优点包括:
1、使用业务真实环境作为测试基础环境,保证测试出的结果与真实环境一致,且不会影响线上业务。
2、可以自动分析出待测域名需测试的子服务项目,减少人工繁琐的操作。
3、支持黑盒测试和白盒测试,适应各种测试需求环境,相比与常规单一的功能测试本发明的测试范围为广。
4、通过日志数据库记录历史测试用例,重复测试相同域名时可以使用历史测试用例用于对比功能变化。
5、本发明支持的功能覆盖线上常见业务,将测试脚本框架化使后期维护更加简单,支持的功能覆盖线上常见业务,减少测试所需时间。
6、界面友好,依次显示待测域名的各个子服务的测试结果,方便用户查看。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (16)
1.一种业务测试方法,其特征在于,包括:
客户端接收待测域名,将所述待测域名发送至属于预设测试环境的服务器;
所述服务器获取对于所述待测域名的配置信息并加载;
所述客户端确定所述待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据所述子服务的测试URL确定子服务测试脚本;
运行每个子服务测试脚本,从所述服务器获取每个子服务的运行结果数据;
判断每个子服务的功能是否符合预设条件。
2.如权利要求1所述的业务测试方法,其特征在于,
所述接收待测域名之前,所述方法还包括:接收测试方式;
所述测试方式为黑盒测试方式时,所述确定每个子服务对应的测试统一资源定位符URL包括:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL。
3.如权利要求1所述的业务测试方法,其特征在于,
所述接收待测域名之前,所述方法还包括:接收测试方式;
所述测试方式为白盒测试方式时,所述确定每个子服务对应的测试统一资源定位符URL包括:
判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断所述子服务是否属于预设功能服务范围,如果是,根据所述待测域名的配置文件生成测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据所述待测域名生成预设格式的测试URL。
4.如权利要求3所述的业务测试方法,其特征在于,
所述提取所述历史测试用例中的测试URL作为此子服务对应的测试URL包括:确定所述待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL。
5.如权利要求3所述的业务测试方法,其特征在于,
所述根据所述待测域名的配置文件生成测试URL包括:在所述待测域名的配置文件中检索与所述子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据所述测试要素构成所述测试URL。
6.如权利要求1至5中任一权利要求所述的业务测试方法,其特征在于,
确定所述待测域名的所有子服务的同时还确定所述待测域名的所有子服务的测试条件;
所述运行每个子服务测试脚本包括:根据所述子服务的测试条件运行所述子服务测试脚本。
7.如权利要求1至5中任一权利要求所述的业务测试方法,其特征在于,
判断每个子服务的功能是否符合预设条件之后,所述方法还包括:
搜索所述待测域名的域名测试日志,判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将所述当前判断结果和所述历史判断结果合并。
8.如权利要求1至5中任一权利要求所述的业务测试方法,其特征在于,
所述服务器包括负载均衡服务器和缓存服务器;
所述负载均衡服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于负载均衡的配置信息;
所述缓存服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于缓存方式的配置信息。
9.一种业务测试装置,其特征在于,包括:客户端和属于预设测试环境的服务器;所述客户端包括第一接收模块、确定模块、运行模块、获取模块,功能判断模块;
第一接收模块,用于接收待测域名,将所述第一接收模块发送至所述通信模块;
所述确定模块,用于确定所述待测域名的所有子服务,确定每个子服务对应的测试统一资源定位符URL;根据所述子服务的测试URL确定子服务测试脚本;
所述运行模块,用于运行每个子服务测试脚本;
所述通信模块,用于将所述待测域名发送至服务器,还用于从服务器获取每个子服务的运行结果数据;
所述功能判断模块,用于判断每个子服务的功能是否符合预设条件;
所述服务器,用于接收所述待测域名,获取对于所述待测域名的配置信息并加载。
10.如权利要求9所述的业务测试装置,其特征在于,
所述装置还包括:第二接收模块,用于接收测试方式;
所述确定模块,还用于在所述测试方式为黑盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL。
11.如权利要求9所述的业务测试装置,其特征在于,
所述装置还包括:第二接收模块,用于接收测试方式;
所述确定模块,还用于在所述测试方式为白盒测试方式时,使用以下方法确定每个子服务对应的测试统一资源定位符URL:判断是否接收到用户输入的测试URL,如果是,将用户输入的测试URL作为所述子服务的测试URL,如果否,判断所述子服务是否属于预设功能服务范围,如果是,根据所述待测域名的配置文件生成测试URL,如果否,判断是否已存储所述子服务的历史测试用例,如果是,提取所述历史测试用例中的测试URL作为此子服务对应的测试URL,如果否,根据所述待测域名生成预设格式的测试URL。
12.如权利要求11所述的业务测试装置,其特征在于,
所述确定模块,还用于使用以下方法提取所述历史测试用例中的测试URL作为此子服务对应的测试URL:确定所述待测域名在当前时间的预设时长之内访问量最大的URL作为测试URL。
13.如权利要求11所述的业务测试装置,其特征在于,
所述确定模块,还用于使用以下方法根据所述待测域名的配置文件生成测试URL:在所述待测域名的配置文件中检索与所述子服务相关的配置参数,将检索到的配置参数组合成测试要素,根据所述测试要素构成所述测试URL。
14.如权利要求9至13中任一权利要求所述的业务测试装置,其特征在于,
所述确定模块,还用于在确定所述待测域名的所有子服务的同时还确定所述待测域名的所有子服务的测试条件;
所述运行模块,还用于运行每个子服务测试脚本包括:根据所述子服务的测试条件运行所述子服务测试脚本。
15.如权利要求9至13中任一权利要求所述的业务测试装置,其特征在于,
所述装置还包括:
搜索模块,用于搜索所述待测域名的域名测试日志;
处理模块,用于判断每个子服务是否符合预设条件得到当前判断结果是否与历史判断结果一致,如果不一致,将所述当前判断结果和所述历史判断结果合并。
16.如权利要求9至13中任一权利要求所述的业务测试装置,其特征在于,
所述服务器包括负载均衡服务器和缓存服务器;
所述负载均衡服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于负载均衡的配置信息;
所述缓存服务器获取的对于所述待测域名的配置信息包括:CDN业务在待测域名中关于缓存方式的配置信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810166742.XA CN110213117B (zh) | 2018-02-28 | 2018-02-28 | 一种业务测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810166742.XA CN110213117B (zh) | 2018-02-28 | 2018-02-28 | 一种业务测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110213117A true CN110213117A (zh) | 2019-09-06 |
CN110213117B CN110213117B (zh) | 2020-08-07 |
Family
ID=67778703
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810166742.XA Active CN110213117B (zh) | 2018-02-28 | 2018-02-28 | 一种业务测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110213117B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070277158A1 (en) * | 2006-02-24 | 2007-11-29 | International Business Machines Corporation | Method and apparatus for testing of business processes for Web services |
CN101727389A (zh) * | 2009-11-23 | 2010-06-09 | 中兴通讯股份有限公司 | 一种分布式综合业务自动化测试系统及方法 |
CN103530231A (zh) * | 2013-10-12 | 2014-01-22 | 北京京东尚科信息技术有限公司 | 一种基于业务流程控制的应用程序测试方法及系统 |
CN103605609A (zh) * | 2013-12-10 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种适用于云计算的自动化测试框架 |
CN105718369A (zh) * | 2016-01-19 | 2016-06-29 | 国家电网公司 | 计算机软件测试异常处理系统及测试方法 |
CN107040433A (zh) * | 2017-05-10 | 2017-08-11 | 福建网龙计算机网络信息技术有限公司 | 一种自动化测试方法及系统 |
CN107154976A (zh) * | 2017-05-10 | 2017-09-12 | 北京微影时代科技有限公司 | 网站测试方法、装置以及系统 |
CN107608880A (zh) * | 2017-08-24 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种基于数据驱动用于虚拟化平台的自动化测试方法 |
-
2018
- 2018-02-28 CN CN201810166742.XA patent/CN110213117B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070277158A1 (en) * | 2006-02-24 | 2007-11-29 | International Business Machines Corporation | Method and apparatus for testing of business processes for Web services |
CN101727389A (zh) * | 2009-11-23 | 2010-06-09 | 中兴通讯股份有限公司 | 一种分布式综合业务自动化测试系统及方法 |
CN103530231A (zh) * | 2013-10-12 | 2014-01-22 | 北京京东尚科信息技术有限公司 | 一种基于业务流程控制的应用程序测试方法及系统 |
CN103605609A (zh) * | 2013-12-10 | 2014-02-26 | 浪潮电子信息产业股份有限公司 | 一种适用于云计算的自动化测试框架 |
CN105718369A (zh) * | 2016-01-19 | 2016-06-29 | 国家电网公司 | 计算机软件测试异常处理系统及测试方法 |
CN107040433A (zh) * | 2017-05-10 | 2017-08-11 | 福建网龙计算机网络信息技术有限公司 | 一种自动化测试方法及系统 |
CN107154976A (zh) * | 2017-05-10 | 2017-09-12 | 北京微影时代科技有限公司 | 网站测试方法、装置以及系统 |
CN107608880A (zh) * | 2017-08-24 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种基于数据驱动用于虚拟化平台的自动化测试方法 |
Non-Patent Citations (1)
Title |
---|
陈江勇等: "Web自动化测试框架的设计与实现", 《福建师范大学学报(自然科学版)》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110213117B (zh) | 2020-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107995283B (zh) | 一种数据埋点分析的方法、设备及系统 | |
CN105553769B (zh) | 一种数据采集分析系统和方法 | |
US20170142143A1 (en) | Identifying notable events based on execution of correlation searches | |
CN109446071A (zh) | 接口测试方法、接口测试装置、电子设备及存储介质 | |
CN109298997A (zh) | 接口测试方法、系统、计算机设备和存储介质 | |
CN114791846B (zh) | 一种针对云原生混沌工程实验实现可观测性的方法 | |
CN107885873A (zh) | 用于输出信息的方法和装置 | |
CN112860569A (zh) | 一种自动化测试方法、装置、电子设备和存储介质 | |
CN106897207A (zh) | 用户界面测试方法与装置 | |
US10986020B2 (en) | Reconstructing message flows based on hash values | |
JP4627539B2 (ja) | 負荷試験システムおよび負荷試験データ作成方法、ならびにそのプログラム | |
AU2014400621A1 (en) | System and method for providing contextual analytics data | |
CN109902251A (zh) | 基于决策树的方案选择方法、装置、终端及可读存储介质 | |
CN110188291A (zh) | 基于代理日志的文档处理 | |
CN115333966A (zh) | 一种基于拓扑的Nginx日志分析方法、系统及设备 | |
CN110019363A (zh) | 一种校验数据的方法和装置 | |
CN107357922A (zh) | 一种分布式文件系统的nfs访问审计方法及系统 | |
CN109992614B (zh) | 数据获取方法、装置和服务器 | |
CN110213117A (zh) | 一种业务测试方法及装置 | |
Luo et al. | Clustering and tailoring user session data for testing web applications | |
Conti et al. | Spot the difference: Your bucket is leaking: A novel methodology to expose A/B testing effortlessly | |
CN115994079A (zh) | 测试方法、装置、电子设备、存储介质及程序产品 | |
CN112804313A (zh) | 基于跨域边缘节点的数据同步方法、装置、设备及介质 | |
Maung et al. | An efficient test cases reduction approach in user session based testing | |
FR3028973A1 (fr) | Systeme et methode de test de performances d'une infrastructure informatique |
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 |