CN112306840B - 一种url测试用例生成方法及装置 - Google Patents
一种url测试用例生成方法及装置 Download PDFInfo
- Publication number
- CN112306840B CN112306840B CN201910672427.9A CN201910672427A CN112306840B CN 112306840 B CN112306840 B CN 112306840B CN 201910672427 A CN201910672427 A CN 201910672427A CN 112306840 B CN112306840 B CN 112306840B
- Authority
- CN
- China
- Prior art keywords
- test
- url
- domain name
- theft chain
- configuration
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/3015—Name registration, generation or assignment
- H04L61/3025—Domain name generation or assignment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本文是关于一种URL测试用例生成方法及装置,涉及URL测试技术。本文公开的一种URL测试用例生成方法,包括:获取初始测试URL;在域名配置具有防盗链功能需求时,根据域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,自动生成满足域名配置需求的防盗链功能的最终测试URL,并存储最终测试URL的测试用例;其中,可以通过自动爬取客户源站的URL,将所爬取的URL确定为初始测试URL。也可以根据测试需求构建模拟源站,以获取初始测试URL。本文技术方案无需要求客户提供测试URL,提高了测试URL的可靠性和效率。
Description
技术领域
本文涉及URL(Uniform Resource Locator,统一资源定位符)测试技术,尤其涉及一种URL测试用例生成方法及装置。
背景技术
相关技术主要着眼于提高需求配置,配置检测自动化,并没有考虑到测试URL这个对于测试来说非常关键的因素。目前,主要依赖于客户提出需求时给出的测试URL,针对种方式,在需求配置完成之后可能会存在测试的盲目性和不准确性。
另外,在域名需求完成后,如果验证配置满足客户需求需要测试URL时,可能会出现客户也没有测试URL(前端人员与后端隔离,网站搭建未完成)的情况。尤其功能项复杂时,可能需要多次要求提供URL,会引起客户反感。
发明内容
为克服相关技术中存在的问题,本文提供一种URL测试用例生成方法及装置。
根据本文的第一方面,提供一种统一资源定位符URL测试用例生成装置,至少包括获取单元和测试用例生成单元:
所述获取单元,用于获取初始测试URL,其中,通过自动爬取客户源站的URL获取初始测试URL,或者根据测试需求构建模拟源站以获取初始测试URL;
所述测试用例生成单元,用于在域名配置中具有防盗链功能需求时,根据所述域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件中,自动生成满足所述域名配置需求的防盗链功能的最终测试URL,并存储所述最终测试URL的测试用例。
可选地,上述装置中,所述防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,MD5(Message-Digest Algor ithm,消息摘要算法),base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
可选地,上述装置中,所述测试用例生成单元,根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还***已有脚本或程序,此时,输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,再调用已有脚本或程序,生成最终测试URL。
可选地,上述装置中,所述测试用例生成单元,根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,存储所构建的防盗链功能组件,用于生成新的测试URL时进行复用。
可选地,上述装置中,所述获取单元,根据测试需求模拟源站响应,获取初始测试URL,包括:
通过构建的模拟源站,发送测试URL请求,在接收到所述模拟源站反馈的所述测试URL请求的响应时,将所发送的测试URL确定为初始测试URL。
可选地,上述装置,还包括:
关联单元,用于接收新域名的测试URL请求,若所述测试URL请求使用复制功能,则将新域名与请求复制的域名的测试用例关联,此时,所述测试用例生成单元调用所关联的测试用例并输入对应的参数,得到新域名的测试URL;或者
关联单元,用于接收新域名的测试URL请求,在新域名配置完成时,将新域名的配置功能与已存储的测试用例的配置功能进行对比,将所述新域名与对比结果最相似的测试组件进行关联,所述测试用例生成单元调用所关联的测试组件并输入对应的参数,得到新域名的测试URL;或者
关联单元,用于接收新域名的测试URL请求,在新域名配置完成时,从已存储的测试用例中查询与新域名配置使用相同或相近场景的测试用例,所述测试用例生成单元调用所查询到的测试用例并输入对应的参数,得到新域名的测试URL。
根据本文的另一方面,提供一种URL测试用例生成方法,包括:
获取初始测试URL;
在域名配置具有防盗链功能需求时,根据所述域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,自动生成满足所述域名配置需求的防盗链功能的最终测试URL,存储所述最终测试URL的测试用例;
其中,按照如下任一种方式获取所述初始测试URL:
自动爬取客户源站的URL,将所爬取的URL确定为初始测试URL;
根据测试需求构建模拟源站,以获取初始测试URL。
可选地,上述方法中,所述防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,MD5算法,base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
可选地,上述方法还包括:
所述根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还***已有脚本或程序,此时,输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,以及脚本或程序,生成最终测试URL。
可选地,上述方法还包括:
根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,存储所构建的防盗链功能组件,用于生成新的测试URL时进行复用。
可选地,上述方法中,所述根据测试需求构建模拟源站,以获取初始测试URL包括:
通过构建的模拟源站,发送测试URL请求,在接收到所述模拟源站反馈的所述测试URL请求的响应时,将所发送的测试URL确定为初始测试URL。
可选地,上述方法还包括:根据测试需求构建模拟源站,该操作包括:
获取测试域名的配置项,自动生成与所述配置项对应的文件并放入指定服务器资源下,或者获取测试域名配置对应的文件,并将所述文件按照指定文件名存放至指定服务器资源下;
将测试域名的源站指向所述指定服务器,所述指定服务器为构建的模拟源站。
可选地,上述方法还包括:
接收新域名的测试URL请求,若所述测试URL请求使用复制功能,则将新域名与请求复制的域名的测试用例关联,调用所关联的测试用例并输入对应的参数,得到新域名的测试URL;或者
接收新域名的测试URL请求,在新域名配置完成时,将新域名的配置功能与已存储的测试用例的配置功能进行对比,将所述新域名与对比结果最相似的测试组件进行关联,调用所关联的测试组件并输入对应的参数,得到新域名的测试URL;或者
接收新域名的测试URL请求,在新域名配置完成时,从已存储的测试用例中查询与新域名配置使用相同或相近场景的测试用例,调用所查询到的测试用例并输入对应的参数,得到新域名的测试URL。
根据本文的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现如上所述的URL测试用例生成方法的步骤。
根据本文的另一方面,提供一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的URL测试用例生成方法的步骤。
本文通过主动爬取源站或模拟源站的方式来达到模拟真实测试,无需要求客户提供测试URL,提高了测试URL的可靠性和效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本文。
附图说明
构成本文的一部分的附图用来提供对本文的进一步理解,本文的示意性实施例及其说明用于解释本文,并不构成对本文的不当限定。在附图中:
图1是根据一示例性实施例示出的一种URL测试用例生成装置的框图。
图2是根据一示例性实施例示出的一种URL测试用例生成平台的框图。
图3是图2所示URL测试用例生成平台中防盗链测试设计的显示界面示意图。
图4是根据一示例性实施例示出的一种URL测试用例生成方法的流程图。
具体实施方式
为使本文实施例的目的、技术方案和优点更加清楚,下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。需要说明的是,在不冲突的情况下,本文中的实施例及实施例中的特征可以相互任意组合。
本申请发明人提出,在配置需求完成后,可以进行测试URL查找,测试URL生成,测试URL生成模版保存,形成针对域名配置的测试URL生成实例,这样,无需要求客户提供测试URL,可以通过主动爬取或规则模拟源站的方式来达到模拟真实测试。
图1所示为一种示例性实施例提供的一种URL测试用例生成装置的结构示意图,该装置可以是单独的设备,也可以内置于现有的服务器中,该装置至少包括获取单元和测试用例生成单元。
获取单元,被配置为,获取初始测试URL,其中,可以通过自动爬取客户源的URL,将所爬取的URL确定为初始测试URL,也可以根据测试需求模拟源站,以获取初始测试URL。
测试用例生成单元,被配置为,在域名配置需求具有防盗链功能时,根据域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL,防盗链功能涉及的参数至所构建的防盗链功能组件,自动生成满足域名配置需求的防盗链功能的最终测试URL,并存储最终测试URL的测试用例。
本示例中,防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,MD5算法,base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
根据域名配置需求的所有防盗链功能构建防盗链功能组件指,将上述各防盗链功能模块化,每个防盗链功能模块的底层封装有功能代码,之后,根据域名配置的需求,选择一个或多个功能模块从而构建成防盗链功能组件。这种生成防盗链的设计规则将复杂代码行为转化成简单功能模块的组合,隐藏了底层复杂逻辑代码,对本领域技术人员而言,生成测试URL的过程更简便,效率更高。
其中,测试用例生成单元,根据域名配置需求中的防盗链功能,构建防盗链功能组件时,还可以***已有脚本或程序,此时,输入初始测试URL,防盗链功能涉及的参数至所构建的防盗链功能组件,以及***的脚本或程序,即可生成满足域名配置需求的防盗链功能的最终测试URL。
另外,测试用例生成单元,构建防盗链功能组件后,可以存储所构建的防盗链功能组件,主要可以用于生成新的测试URL,例如,域名配置相同时,可以复用此防盗链功能组件。
本文中,防盗链功能涉及的参数,可以是实现防盗链功能所需要的所有参数。例如,防盗链算法中需要的参数或变量等等都可以认为是防盗链功能涉及的参数。
下面以实际应用场景为例,说明上述URL测试用例生成装置的具体实施。
实际应用中,可以将上述URL测试用例生成装置看做为一测试用例生成平台,此平台可划分为基础测试URL生成***和测试用例关联***,如图2所示。基础测试URL生成***中,可以分为三个方面,即基础规则URL扫描源站,防盗链测试URL生成平台以及模拟源站响应测试URL。基础测试URL生成***作为支撑测试用例关联的底层,可以通过配置与功能模块、测试用例间生成的松耦合模型,提升功能模块的复用率,更为方便测试URL生成,尽可能免去人为操作的必要。
先介绍基础测试URL生成***,相当于上述获取单元和测试用例生成单元,其从三个维度解决测试URL的生成问题,解决之前只能依赖客户给出可测试URL的窘迫。
一、按照基础规则URL扫描源站,即针对简单配置,组件化的功能配置查找测试URL(相当于上述的初始测试URL),具体地,域名配置中可能存在多种规则,针对每种规则分别去扫描源站,以获取对应的可用URL做为初始测试URL。
例如可以根据URL配置项确认配置需要的测试项目。假设,域名配置中的功能项是缓存,规则***判断拉取源站index.html首页测试缓存是否正常,如果测试缓存正常,则将拉取的源站index.html做为初始测试URL。
再假设,域名配置拉取的URL类似需要jpg,txt这样的类型文件,即测试URL的配置中功能项有文件类型要求,此时***内部对应会启动源站扫描功能。通过预设字典中的字、词对源站进行一定规则的***,获取可以响应正常的类型文件,即访问首页,爬取需要的文件格式页面,爬取的要求的类型文件即为初始测试URL。
二、模拟源站响应测试URL。一般可以通过自设定源站(即构建模拟源站)来构造测试URL。其中,构建模拟源站的过程可参照如下操作:
模拟源站文件操作,该操作可以分为自动和手动模拟两种情况。
先介绍自动模拟的情况,一般是***通过获取测试域名的URL配置项,如果认定为可自动操作的简单配置,***将自动生成一个对应文件并放入特定服务器(也称为指定服务器)资源下。即此文件的URL为指定服务器下资源的位置。
再介绍手动模拟的情况,一般是针对复杂URL配置,可以由人为设定好文件内容,假设配置时解密特殊加密文件,此时将特殊加密文件可以命名为domai n-XX放入特定服务器资源下,即特殊加密文件的URL为指定服务器下资源的位置。
按照上述自动模拟和手动模拟这两种情况,模拟源站文件之后,在后续请求测试URL时,测试平台可以修改域名配置的源站指向特定服务器(即将特定服务器的域名修改为源站的域名),此时特定服务器即可以认为是模拟源站,之后特定服务器反馈URL测试请求的响应即可完成正确的功能测试。
从上述过程可以看出,构建模拟源站时,还有很重要的一个部分,即模拟源站头部操作,即通过头部配置项的逻辑设定源站对URL测试请求的响应的响应头。域名配置时,需要删除源站的响应头,因此模拟源站***可以拿到要删除的头部名称和值。例如,要删除的响应头是Vary,值为Accept-Encoding,此时,模拟源站***,可以在向特定服务器发起的域名请求(即URL请求)中默认加上Vary头部且值为Accept-Encoding。
三、防盗链URL测试URL生成平台:该部分功能主要为实现防盗链算法的设计,能够简单生成可测试URL。防盗链测试URL生成平台的显示界面设计如图3所示,可以分为三部分。
Part1、模块框,主要用来存放防盗链功能模块,每个防盗链功能模块的底层封装有功能代码,可认为是简单使用的功能块。例如,防盗链功能模块可以包括变量定义,字符串拼接,字符串截取,字符串替换,MD5算法等常用功能中的任一种或几种。
Part2、算法设计框:可以实现将模块、用例作为参数拖拉,使用时填入适当的参数(即为防盗链功能涉及的参数,例如防盗链算法中所需要的参数,或变量等)。按照流程化实现防盗链算法,即将防盗链功能等从上到下开始执行。例如,可以参考如下操作设计防盗链算法:
S1、设置防盗链算法中需要的参数,例如,变量,可以在变量模块中定义;
S2、根据防盗链算法流程定义每一步骤,如图3范例所示,根据域名配置中涉及的其他防盗链功能拖拉需要的功能项(即需要的功能模块),组合生成防盗链功能组件;
S3、完成算法设计,生成测试URL,保存上述防盗链组件以及测试URL的可用测试用例。
Part3、用例组框,这部分内容包括两块组成:1、从part1中复用的功能模块构成的组件等。2、支持特殊脚本(也可以称为已有的功能脚本),程序执行命令获得输出到功能块,因此,基础环境可以搭建在服务器上,从而实现强扩展性。
下面介绍测试用例关联***,即相当于上述的关联单元。主要分成两块,利用已经生成防盗链组件,自动将配置与可能的模块或测试用例关联。主要依赖的基础测试URL生成***,在对配置和域名生成测试模版,用例保存后在该***中做关联处理,使得重复的工作减少,提高工作效率。
例如,对于新域名关联,可以执行如下操作:
新增域名使用复制功能时,可以默认将新域名与复制域名的测试用例关联,这样新增的域名在一开始就能获得可用的测试用例。
新域名配置完成时,还可以根据域名之间的功能匹配相似点,自动关联相似的测试模块、用例。
配置关联:在域名关联中,会碰到一些情况下不能完全匹配,此时需要配置关联功能。
配置项完成后,判断曾经有相似情景下,自动寻找可用测试URL模版,并默认使用该模版生成可测试URL。
图4所示所示为一种示例性实施例提供的一种URL测试用例生成方法的流程图。该方法主要包括如下操作:
步骤S401,获取初始测试URL;
其中,按照如下任一种方式获取所述初始测试URL:
自动爬取客户源站的URL,将所爬取的URL确定为初始测试URL;
根据测试需求构建模拟源站,以获取初始测试URL。
步骤S402,在域名配置具有防盗链需求时,根据所述域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,自动生成满足所述域名配置需求的防盗链功能的最终测试URL;
步骤S403,存储所述最终测试URL的测试用例。
本文中,防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,MD5算法,base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
在上述方法的基础上,还可以进行如下操作:根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还可以***已有脚本或程序(相当于相关技术中已存在的具备指定功能的脚本或程序),此时,输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,以及脚本或程序,生成最终测试URL。
根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还可以存储所构建的防盗链功能组件,用于生成新的测试URL时进行复用。
上述方法中,涉及到的模拟源站,可以参照如下操作来建立:
获取测试域名的配置项,自动生成与配置项对应的文件并放入指定服务器资源下,或者获取测试域名配置对应的文件,并将文件按照指定文件名存放至指定服务器资源下,即确定了资源对应的URL;
将测试域名的源站指向所述指定服务器(即将所述指定服务器的域名修改为源站的域名),此时,指定服务器为构建的模拟源站。
按照上述方法建立模拟源站后,可以参照如下操作来获取初始测试URL:
通过构建的模拟源站,发送测试URL请求,在接收到所述模拟源站反馈的所述测试URL请求的响应时,将所发送的测试URL确定为初始测试URL。
另外,按照上述方法生成URL测试用例后,还可能会接收到新域名的测试请求,此时,可以关联使用上述已生成的URL测试用例,从而避免重复操作,提高测试效率。例如,接收新域名的测试URL请求时,若所述测试URL请求使用复制功能,可以将新域名与请求复制的域名的测试用例关联,调用所关联的测试用例并输入对应的参数,即可得到新域名的测试URL。又例如,接收新域名的测试URL请求后,在新域名配置完成时,将新域名的配置功能与已存储的测试用例的配置功能进行对比,将所述新域名与对比结果最相似的测试组件进行关联,可以调用所关联的测试组件并输入对应的参数,得到新域名的测试URL。又例如,接收新域名的测试URL请求后,在新域名配置完成时,可以从已存储的测试用例中查询与新域名配置使用相同或相近场景的测试用例,调用所查询到的测试用例并输入对应的参数,得到新域名的测试URL。
关于上述方法中,执行操作步骤的具体方式已经在与本方法相关的URL测试用例生成装置的实施例中进行了详细描述,此处将不做详细阐述说明。
一示例性实施例提供一种计算机可读存储介质,其上存储有计算机程序,其中,计算机程序被执行时实现如上所述的URL测试用例生成方法的步骤。关于上述计算机程序执行的方法的步骤的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
一示例性实施例提供一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,其中,处理器执行计算机程序时实现如上所述的URL测试用例生成方法的步骤。
关于上述处理器执行计算机程序时涉及的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
从上述实施例可以看出,本文公开的技术方案具有如下有益效果:
通过自动化爬取客户源的URL,作为测试URL,可以保证配置上线与实际无大差异,提高测试的准确性。
针对测试需要模拟源站响应给出可测试URL,在一些复杂情况或客户支持较差时,省去了向客户请求测试URL的操作,提升了配置测试效率。
可以界面化生成防盗链的设计规则将复杂代码行为转化成简单模块拖拽,可视化加密解密流程,隐藏了底层复杂逻辑代码,对本领域技术人员而言,生成测试URL的过程更简便,效率更高。
测试用例生成过程中,功能模块、测试用例可拆分复用与配置松耦合,可以自动关联相似配置,提供测试依据,提升测试模版复用率,简化了与配置选项一一对应配置的操作,从而提高了生成测试URL用例的效率。
本领域技术人员应明白,本文的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本文可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本文可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质,包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质等。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
本文是参照根据本文实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
尽管已描述了本文的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本文范围的所有变更和修改。
显然,本领域的技术人员可以对本文进行各种改动和变型而不脱离本文的精神和范围。这样,倘若本文的这些修改和变型属于本文权利要求及其等同技术的范围之内,则本文的意图也包含这些改动和变型在内。
Claims (15)
1.一种统一资源定位符URL测试用例生成装置,其特征在于,至少包括获取单元和测试用例生成单元:
所述获取单元,用于获取初始测试URL,其中,通过自动爬取客户源站的URL获取初始测试URL,或者根据测试需求构建模拟源站以获取初始测试URL;
所述测试用例生成单元,用于在域名配置中具有防盗链功能需求时,根据所述域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件中,自动生成满足所述域名配置需求的防盗链功能的最终测试URL,并存储所述最终测试URL的测试用例,构建防盗链组件包括:将各防盗链功能模块化,每个防盗链功能模块的底层封装有功能代码;根据域名配置的需求,选择一个或多个所述防盗链功能模块构建成防盗链功能组件。
2.根据权利要求1所述的装置,其特征在于,所述防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,消息摘要MD5算法,基础base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
3.根据权利要求2所述的装置,其特征在于,
所述测试用例生成单元,根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还***已有脚本或程序,此时,输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,再调用已有脚本或程序,生成最终测试URL。
4.根据权利要求1所述的装置,其特征在于,
所述测试用例生成单元,根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,存储所构建的防盗链功能组件,用于生成新的测试URL时进行复用。
5.根据权利要求1至4任一项所述的装置,其特征在于,所述获取单元,根据测试需求模拟源站响应,获取初始测试URL,包括:
通过构建的模拟源站,发送测试URL请求,在接收到所述模拟源站反馈的所述测试URL请求的响应时,将所发送的测试URL确定为初始测试URL。
6.根据权利要求5所述的装置,其特征在于,还包括:
关联单元,用于接收新域名的测试URL请求,若所述测试URL请求使用复制功能,则将新域名与请求复制的域名的测试用例关联,此时,所述测试用例生成单元调用所关联的测试用例并输入对应的参数,得到新域名的测试URL;或者
关联单元,用于接收新域名的测试URL请求,在新域名配置完成时,将新域名的配置功能与已存储的测试用例的配置功能进行对比,将所述新域名与对比结果最相似的测试组件进行关联,所述测试用例生成单元调用所关联的测试组件并输入对应的参数,得到新域名的测试URL;或者
关联单元,用于接收新域名的测试URL请求,在新域名配置完成时,从已存储的测试用例中查询与新域名配置使用相同或相近场景的测试用例,所述测试用例生成单元调用所查询到的测试用例并输入对应的参数,得到新域名的测试URL。
7.一种统一资源定位符URL测试用例生成方法,其特征在于,包括:
获取初始测试URL;
在域名配置具有防盗链功能需求时,根据所述域名配置需求的所有防盗链功能,构建防盗链功能组件,并输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,自动生成满足所述域名配置需求的防盗链功能的最终测试URL,存储所述最终测试URL的测试用例,构建防盗链组件包括:将各防盗链功能模块化,每个防盗链功能模块的底层封装有功能代码;根据域名配置的需求,选择一个或多个所述防盗链功能模块构建成防盗链功能组件;
其中,按照如下任一种方式获取所述初始测试URL:
自动爬取客户源站的URL,将所爬取的URL确定为初始测试URL;
根据测试需求构建模拟源站,以获取初始测试URL。
8.根据权利要求7所述的方法,其特征在于,所述防盗链功能至少包括如下任一种或几种功能:
字符串拼接,字符串截取,字符串替换,消息摘要MD5算法,基础base64计算,变量定义,URL转码,时间戳设置,进制转换,加密URL格式设置。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
所述根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,还***已有脚本或程序,此时,输入初始测试URL以及防盗链功能涉及的参数至所构建的防盗链功能组件,以及脚本或程序,生成最终测试URL。
10.根据权利要求7所述的方法,其特征在于,所述方法还包括:
根据域名配置需求的所有防盗链功能,构建防盗链功能组件时,存储所构建的防盗链功能组件,用于生成新的测试URL时进行复用。
11.根据权利要求7至10任一项所述的方法,其特征在于,所述根据测试需求构建模拟源站,以获取初始测试URL包括:
通过构建的模拟源站,发送测试URL请求,在接收到所述模拟源站反馈的所述测试URL请求的响应时,将所发送的测试URL确定为初始测试URL。
12.根据权利要求11所述的方法,其特征在于,该方法还包括:根据测试需求构建模拟源站,该操作包括:
获取测试域名的配置项,自动生成与所述配置项对应的文件并放入指定服务器资源下,或者获取测试域名配置对应的文件,并将所述文件按照指定文件名存放至指定服务器资源下;
将测试域名的源站指向所述指定服务器,所述指定服务器为构建的模拟源站。
13.根据权利要求12所述的方法,其特征在于,该方法还包括:
接收新域名的测试URL请求,若所述测试URL请求使用复制功能,则将新域名与请求复制的域名的测试用例关联,调用所关联的测试用例并输入对应的参数,得到新域名的测试URL;或者
接收新域名的测试URL请求,在新域名配置完成时,将新域名的配置功能与已存储的测试用例的配置功能进行对比,将所述新域名与对比结果最相似的测试组件进行关联,调用所关联的测试组件并输入对应的参数,得到新域名的测试URL;或者
接收新域名的测试URL请求,在新域名配置完成时,从已存储的测试用例中查询与新域名配置使用相同或相近场景的测试用例,调用所查询到的测试用例并输入对应的参数,得到新域名的测试URL。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求7-13中任意一项所述方法的步骤。
15.一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求7-13中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910672427.9A CN112306840B (zh) | 2019-07-24 | 2019-07-24 | 一种url测试用例生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910672427.9A CN112306840B (zh) | 2019-07-24 | 2019-07-24 | 一种url测试用例生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112306840A CN112306840A (zh) | 2021-02-02 |
CN112306840B true CN112306840B (zh) | 2022-09-30 |
Family
ID=74329269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910672427.9A Active CN112306840B (zh) | 2019-07-24 | 2019-07-24 | 一种url测试用例生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112306840B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193007A (zh) * | 2006-11-28 | 2008-06-04 | 国际商业机器公司 | 统一资源定位符命令测试方法、场景测试方法和相应设备 |
CN107426202A (zh) * | 2017-07-13 | 2017-12-01 | 北京知道未来信息技术有限公司 | 一种自动化测试waf拦截规则的方法 |
CN108667770A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 一种网站的漏洞测试方法、服务器及*** |
-
2019
- 2019-07-24 CN CN201910672427.9A patent/CN112306840B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193007A (zh) * | 2006-11-28 | 2008-06-04 | 国际商业机器公司 | 统一资源定位符命令测试方法、场景测试方法和相应设备 |
CN108667770A (zh) * | 2017-03-29 | 2018-10-16 | 腾讯科技(深圳)有限公司 | 一种网站的漏洞测试方法、服务器及*** |
CN107426202A (zh) * | 2017-07-13 | 2017-12-01 | 北京知道未来信息技术有限公司 | 一种自动化测试waf拦截规则的方法 |
Non-Patent Citations (2)
Title |
---|
Web安全测试中URL参数重写检测框架;陆余良 等;《计算机工程》;20101231;第36卷(第23期);第133-135页 * |
网站图片防盗链技术的研究和实现;卢艳茹;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20130115;第I139-234页 * |
Also Published As
Publication number | Publication date |
---|---|
CN112306840A (zh) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874680B (zh) | 一种自动化的软件测试方法及*** | |
CN107896244B (zh) | 一种版本文件的分发方法、客户端及服务器 | |
CN106575227B (zh) | 自动软件更新框架 | |
US20160179495A1 (en) | Device and method for packaging application | |
KR102044046B1 (ko) | 텔레메트리 파일 해시 및 충돌 검출 기법 | |
US20070073724A1 (en) | System and method for automatic or semi-automatic software integration | |
CN105827683A (zh) | 一种数据同步的方法、服务器及电子设备 | |
US10007532B1 (en) | Data infrastructure for cross-platform cross-device API inter-connectivity | |
CN106201861A (zh) | 一种代码质量的检测方法及装置 | |
CN111984228B (zh) | 一种接口文档的处理方法、装置、计算机设备和存储介质 | |
CN110109681B (zh) | 不同平台间代码的转换方法及*** | |
CN112364049B (zh) | 数据同步脚本生成方法、***、终端及存储介质 | |
CN110442371A (zh) | 一种发布代码的方法、装置、介质及计算机设备 | |
CN111159099A (zh) | 在线数据生成方法、装置、电子设备和存储介质 | |
US10606730B2 (en) | Networked digital data processor log file viewer | |
CN111198713B (zh) | 基于Android的同份源代码兼容各客户需求的方法和装置 | |
CN112306840B (zh) | 一种url测试用例生成方法及装置 | |
CN104252413A (zh) | 一种自动化脚本生成方法、装置及*** | |
US8498963B2 (en) | Method and system for data synchronization | |
CN112015432A (zh) | 一种静态项目部署方法及装置 | |
JP2006209521A (ja) | テスト項目自動生成装置 | |
US11799724B2 (en) | Internet-of-things model-based virtual internet-of-things device generation method and apparatus | |
CN109635175B (zh) | 页面数据拼接方法、装置、可读存储介质和电子设备 | |
CN111275553B (zh) | 一种区块链的数据存储方法及区块链*** | |
CN110968888B (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 |