CN109308265A - 生成反向测试用例的方法和装置 - Google Patents
生成反向测试用例的方法和装置 Download PDFInfo
- Publication number
- CN109308265A CN109308265A CN201811257020.1A CN201811257020A CN109308265A CN 109308265 A CN109308265 A CN 109308265A CN 201811257020 A CN201811257020 A CN 201811257020A CN 109308265 A CN109308265 A CN 109308265A
- Authority
- CN
- China
- Prior art keywords
- interface
- tested
- parameter value
- mistake
- case
- 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.)
- Pending
Links
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
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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种生成反向测试用例的方法和装置,属于计算机技术领域。所述方法包括:获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。采用本发明,可以有效解决相关技术中手工设计反向测试用例效率低的技术问题。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种生成反向测试用例的方法和装置。
背景技术
在接口测试中,测试用例可以分为正向测试用例和反向测试用例。正向测试用例用于测试接口的基本功能,即测试正常输入时,接口能否实现预期的基本功能。反向测试用例用于测试接口的容错性,即测试异常输入时,接口能否检测出该异常输入并进行相应的处理。
相关技术中,测试人员手工设计反向测试用例,然后执行这些反向测试用例,进行接口容错性测试。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
测试接口容错性时,需要大量的反向测试用例,而依靠测试人员手工设计这些反向测试用例,效率很低。
发明内容
为了解决相关技术中存在的技术问题,本发明实施例提供了一种生成反向测试用例的方法和装置。所述生成反向测试用例的方法和装置的技术方案如下:
第一方面,提供了一种生成反向测试用例的方法,所述方法包括:
获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;
基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;
将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。
可选的,所述基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值,包括:
基于所述待测试的接口参数的参数值要求信息,以及预设的所述待测试的接口参数对应的待测试错误类型,生成不满足所述参数值要求信息的错误参数值。
可选的,所述待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误。
可选的,所述获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息之前,还包括:
接收参数设置消息,其中,所述参数设置消息携带有目标参数的标识信息和所述目标接口的标识信息;
将所述目标参数设置为所述目标接口的待测试的接口参数。
可选的,所述方法还包括:
将所述反向测试用例添加到所述目标接口的测试用例集中;
当接收到所述目标接口的测试指令时,基于所述测试用例集中的所有测试用例,对所述目标接口进行测试。
可选的,所述对所述目标接口进行测试之后,还包括:
将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
第二方面,提供了一种生成反向测试用例的装置,所述装置包括:
获取模块,用于获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;
生成模块,用于基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;
替换模块,用于将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。
可选的,所述生成模块,用于:
基于所述待测试的接口参数的参数值要求信息,以及预设的所述待测试的接口参数对应的待测试错误类型,生成不满足所述参数值要求信息的错误参数值。
可选的,所述待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误。
可选的,所述装置还包括:
设置模块,用于接收参数设置消息,其中,所述参数设置消息携带有目标参数的标识信息和所述目标接口的标识信息,将所述目标参数设置为所述目标接口的待测试的接口参数。
可选的,所述装置还包括:
添加模块,用于将所述反向测试用例添加到所述目标接口的测试用例集中;
测试模块,用于当接收到所述目标接口的测试指令时,基于所述测试用例集中的所有测试用例,对所述目标接口进行测试。
可选的,所述生成模块,还用于:
将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上述第一方面所述的生成反向测试用例的方法。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上述第一方面所述的生成反向测试用例的方法。
本发明实施例提供的技术方案带来的有益效果至少包括:
本发明实施例提供的方法,基于正向测试用例和目标接口的待测试的接口参数的参数值要求信息,自动生成不满足参数值要求信息的错误参数值,并将正向测试用例中的正确参数值替换为这些错误参数值,自动生成反向测试用例。从而不需要测试人员手工设计这些反向测试用例,提高了效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种生成反向测试用例的方法的流程图;
图2是本发明实施例提供的一种生成反向测试用例的装置的结构示意图;
图3是本发明实施例提供的一种终端的结构框图;
图4是本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种生成反向测试用例的方法,该方法可以由计算机设备实现。其中,该计算机设备可以是手机、平板电脑、笔记本等移动终端,也可以是台式计算机等固定终端,也可以是服务器。
当需要进行接口容错性测试时,首先,针对待测试的接口建立相应的反向测试用例的生成模型,然后,向模型中录入一条正向测试用例和待测试的接口参数的参数值要求信息,模型基于正向测试用例和待测试的接口参数的参数值要求信息,自动生成不满足参数值要求信息的错误参数值,并将正向测试用例中的正确参数值替换为这些错误参数值,自动生成反向测试用例。然后,将这些反向测试用例添加到接口的测试用例集中,执行这些反向测试用例。最终,将执行反向测试用例得到的测试结果与预设的预期结果进行对比,自动生成接口容错性的的测试报告。
如图1所示,该方法的处理流程可以包括如下的步骤:
在步骤101中,获取目标接口的正向测试用例和目标接口的待测试的接口参数的参数值要求信息。
其中,正向测试用例是指各参数的参数值符合接口参数的各参数值要求信息的测试用例。待测试的接口参数是指在目标接口的所有参数中接口容错性测试想要测试的参数。接口参数的参数值要求信息可以包含对参数值的类型要求、取值范围要求、字符数限制要求和溢出范围要求等。
在实施中,技术人员在进行接口容错性测试时,首先,针对待测试的接口(即目标接口)建立相应的反向测试用例的生成模型,分析目标接口的接口协议,得出待测试的接口参数的参数值要求信息,并将其写成计算机设备可以识别的形式,根据该参数值要求信息设计一条正向测试用例。然后,向计算机设备录上入该正向测试用例和该参数值要求信息。计算机设备获取目标接口的正向测试用例和目标接口的待测试的接口参数的参数值要求信息。
例如,如表1所示,计算机设备获取目标接口的一条正向测试用例http://****?idfa=example&channel=10007&query_method=1&callback=test和目标接口的待测试的接口参数的参数值要求信息。从正向测试用例中可以看出,目标接口参数有idfa、channel、query_method和callback。待测试的接口参数为query_method和callback,其中,query_method的参数值要求为:必填、整型、范围为[1,100],callback的参数值要求为:非必填、字符串、最大字符数为20。
表1
可选的,待测试的接口参数可以由技术人员进行相应设置,步骤101相应的处理过程如下:接收参数设置消息,其中,参数设置消息携带有目标参数的标识信息和目标接口的标识信息。将目标参数设置为目标接口的待测试的接口参数。
其中,目标参数即为待测试的接口参数,目标接口即为待测试的接口。
在实施中,有时并不需要对待测试的接口的所有参数进行测试,而只需要对其中一部分参数进行测试。当需要只对待测试接口的特定参数进行测试时,技术人员可以在计算机设备上相应的操作界面中输入想要测试的接口(即目标接口)的标识信息,然后输入想要测试的参数(即目标参数)的标识信息。计算机设备则会接收参数设置消息,对参数设置消息进行解析,获取其中携带的目标参数的标识信息和目标接口的标识信息。然后,计算机设备可以基于目标接口的标识信息,查找本地存储的目标接口对应的待测试的接口参数的标识信息,将查找到的待测试的接口参数的标识信息替换为目标参数的标识信息。或者,计算机设备也可以将目标参数的标识信息添加到本地存储的目标接口对应的待测试的接口参数的标识信息。然后计算机设备还可以获取待测试的接口参数的参数值要求信息,进行存储。
例如,计算机设备接收到携带有query_method与callback的标识信息和目标接口的标志信息后,将目标接口中的query_method与callback设置为待测试的接口参数,然后,获取query_method与callback的参数值要求信息。
在步骤102中,基于待测试的接口参数的参数值要求信息,生成不满足参数值要求信息的错误参数值。
在实施中,技术人员根据等价类划分原则,将每个参数所有可能的错误划分成若干等价的错误类型。然后,生成接口、待测试的接口参数和错误类型的对应关系,并进行存储。错误类型可以以对应关系表的形式存储,如表2所示。其中,错误类型可以包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、XSS(Cross-SiteScripting,跨站脚本攻击)注入错误、空字符串错误和必填项不填错误等。不同的接口参数,参数值要求信息不同,所以涉及的错误类型不同,可以涉及上述错误类型的部分或全部。
表2
计算机设备在获取目标接口的正向测试用例和目标接口的待测试的接口参数的参数值要求信息之后,可以在上述对应关系表中,查找目标接口和待测试的接口参数对应的错误类型。进而基于错误类型,在参数要求信息中,确定错误类型对应的子信息,进而基于该子信息,生成相应的错误参数值。例如,错误类型为大于最大边界值错误,那么对应的子信息为最大边界值要求子信息,如100,生成的错误参数值可以为101。
然后,在每种错误类别中生成一个具有代表性的错误参数值。例如,待测试的接口参数为query_method与callback,根据等价类划分原则,针对query_method与callback各自划分不同的错误类型。对于query_method,划分的错误类型为数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、XSS注入错误、空字符串错误和必填项不填错误。对于callback,划分的错误类型为XSS注入错误、特殊字符错误和大于最大字符数错误。然后在每种错误类型中生成一个具有代表性的错误参数值,如表3中第三列所示。
在每种错误类型中只生成一个具有代表性的错误参数值即可,而不必生成多个错误参数值。例如,针对query_method这一待测试的接口参数,对于大于最大边界值类型的错误,只生成query_method=101这一具有代表性的错误参数值,而不必再生成query_method=102或其他大于边界值类型的错误参数值。从而,最终只生成较少数量的反向测试用例就可以较全面的覆盖所有异常情况。
可选的,可以只生成特定错误类型的错误参数值,步骤102相应的处理过程如下:基于待测试的接口参数的参数值要求信息,以及预设的待测试的接口参数对应的待测试错误类型,生成不满足参数值要求信息的错误参数值。
其中,待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误等错误类型中的一个或者多个。
在实施中,有时并不需要生成所有错误类型的错误参数值,而只需生成特定类型错误的错误参数值。技术人员可以根据实际操作过程中生成的错误参数值的频率,对接口参数设置对应的待测试错误类型。技术人员可以点击操作界面上的错误类型设置按钮,则计算机设备进入接口选择界面,技术人员在接口选择界面中点击选择目标接口,然后,计算机设备进入待测试参数选择界面,技术人员点击选择待测试参数,然后,计算机设备进入错误类型选择界面,技术人员选择待测试的错误类型。计算机设备接收到待测试的错误类型设置指令时,基于该指令,对预先存储的接口、待测试的接口参数和错误类型的对应关系表中选择的错误类型进行标记,标记为待测试错误类型。基于上述设置,在生成反向测试用例的过程中,计算机设备只会生成待测试的接口参数对应的错误类型的错误参数值,而不会生成其他不满足参数值要求信息的错误类型的错误参数值。从而,在满足接口容错性测试需求的基础上,尽量节约计算机资源。
表3
在步骤103中,将正向测试用例中待测试的接口参数的参数值,替换为错误参数值,得到目标接口的反向测试用例。
在实施中,替换时只将正向用例中一个正确参数值替换为对应参数的错误参数值,然后生成一条反向测试用例。最终,生成的反向测试用例的数量与生成的错误参数值的数量一致。
例如,正向测试用例为http://****?idfa=example&channel=10007&query_method=1&callback=test,针对query_method=101这一错误参数值,将正向测试用例中的query_method=1替换为query_method=101,则生成的反向测试用例为http://****?idfa=example&channel=10007&query_method=101&callback=test。针对callback=jdjdjdjdjdjdjdjdjdjdjdjd这一错误参数值,将正向测试用例中的callback=test替换为callback=jdjdjdjdjdjdjdjdjdjdjdjd,则生成的反向测试用例为http://****?idfa=example&channel=10007&query_method=101&callback=jdjdjdjdjdjdjdjdjdjdjdjd。
可选的,生成反向测试用例之后实施这些反向测试用例,步骤103相应的处理过程如下:
将反向测试用例添加到目标接口的测试用例集中。当接收到目标接口的测试指令时,基于测试用例集中的所有测试用例,对目标接口进行测试。
在实施中,针对不同的接口分别建立相应的测试用例集,将生成的反向测试用例添加到对应的目标接口的测试用例集中并保存。当技术人员进行测试,需要执行测试用例时,可以在计算机设备相应的操作界面中点击目标接口对应的测试按钮,计算机设备则会接收到对应目标接口的测试指令,实施测试用例集中的测试用例。技术人员还可以选择测试用例的实施方式,在计算机设备相应的操作界面上显示有测试用例的多个执行方式选项,这些执行方式可以为单接口单用例执行、单接口多用例执行和多接口多用例执行。
若技术人员想要单接口单用例执行测试用例,则他点击操作界面上的单接口单用例执行选项,之后计算机设备进入接口选择界面,技术人员点击一个目标接口,点击确定按钮,然后计算机设备进入测试用例选择界面,技术人员选择一个测试用例,然后点击执行按钮,计算机设备执行该条测试用例。
若技术人员想要单接口多用例执行测试用例,则他点击操作界面上的单接口多用例执行选项,之后计算机设备进入接口选择界面,技术人员点击一个目标接口,点击确定按钮,然后计算机设备进入测试用例选择界面,技术人员选择多个测试用例,然后点击执行按钮,计算机设备执行这些测试用例。或,技术人员选择所有测试用例选项,然后点击执行按钮,计算机设备执行测试用例集中的所有测试用例。
若技术人员想要多接口多用例批量执行测试用例,则他点击操作界面上的多接口多用例批量执行选项,之后计算机设备进入接口选择界面,技术人员点击多个目标接口后,点击确定按钮,然后计算机设备进入接口选择界面,技术人员在不同的接口的测试用例集中分别选择测试用例,然后点击执行按钮,计算机设备执行这些测试用例。
可选的,接口测试完成后自动生成测试报告,步骤103相应的处理过程如下:将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
其中,预设的结果要求信息可以如表4所示。
表4
在实施中,测试完毕后,技术人员想要得到测试报告。可以在计算机设备相应的操作界面中点击对应目标接口的测试报告生成按钮,计算机设备则会接收到对应目标接口的测试报告生成指令,将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
测试得到的测试结果与预设的结果要求信息进行对比时,可以采用绝对值比较法,即预设的结果要求信息为预设的预期结果,只有测试得到的测试结果与预设的预期结果完全一致才可判定为正常。或,采用正则匹配法,即预设的结果要求信息为对测试结果的规则要求,只有测试得到的测试结果符合预设的规则要求才可判定为正常。或,采用错误码方法,即预设的结果要求信息为预设的错误码,只有测试得到的错误码与预设的错误码相同才可判定为正常。
然后根据对比的结果自动生成测试报告。
基于相同的技术构思,本发明实施例还提供了一种生成反向测试用例的装置,该装置可以为上述实施例中的计算机设备,如图2所示,该装置包括:
获取模块201,用于获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;
生成模块202,用于基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;
替换模块203,用于将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。
可选的,生成模块202,用于:
基于所述待测试的接口参数的参数值要求信息,以及预设的所述待测试的接口参数对应的待测试错误类型,生成不满足所述参数值要求信息的错误参数值。
可选的,所述待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误。
可选的,所述装置还包括:
设置模块204,用于接收参数设置消息,其中,所述参数设置消息携带有目标参数的标识信息和所述目标接口的标识信息,将所述目标参数设置为所述目标接口的待测试的接口参数。
可选的,所述装置还包括:
添加模块205,用于将所述反向测试用例添加到所述目标接口的测试用例集中;
测试模块206,用于当接收到所述目标接口的测试指令时,基于所述测试用例集中的所有测试用例,对所述目标接口进行测试。
可选的,生成模块202,还用于:
将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
需要说明的是:上述实施例提供的生成反向测试用例的装置在生成反向测试用例时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的生成反向测试用例的装置与生成反向测试用例的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图3是本发明实施例提供的一种终端的结构框图。该终端300可以是便携式移动终端,比如:智能手机、平板电脑。终端300还可能被称为用户设备、便携式终端等其他名称。
通常,终端300包括有:处理器301和存储器302。
处理器301可以包括一个或多个处理核心,比如4核心处理器、4核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本申请中提供的生成反向测试用例的方法。
在一些实施例中,终端300还可选包括有:外围设备接口303和至少一个外围设备。具体地,外围设备包括:射频电路304、触摸显示屏305、摄像头306、音频电路307、定位组件308和电源309中的至少一种。
外围设备接口303可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器301和存储器302。在一些实施例中,处理器301、存储器302和外围设备接口303被集成在同一芯片或电路板上;在一些其他实施例中,处理器301、存储器302和外围设备接口303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路304包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
触摸显示屏305用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏305还具有采集在触摸显示屏305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器301进行处理。触摸显示屏305用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏305可以为一个,设置终端300的前面板;在另一些实施例中,触摸显示屏305可以为至少两个,分别设置在终端300的不同表面或呈折叠设计;在再一些实施例中,触摸显示屏305可以是柔性显示屏,设置在终端300的弯曲表面上或折叠面上。甚至,触摸显示屏305还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏305可以采用LCD(LiquidCrystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件306用于采集图像或视频。可选地,摄像头组件306包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路307用于提供用户和终端300之间的音频接口。音频电路307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器301进行处理,或者输入至射频电路304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器301或射频电路304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路307还可以包括耳机插孔。
定位组件308用于定位终端300的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件308可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源309用于为终端300中的各个组件进行供电。电源309可以是交流电、直流电、一次性电池或可充电电池。当电源309包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端300还包括有一个或多个传感器310。该一个或多个传感器310包括但不限于:加速度传感器311、陀螺仪传感器312、压力传感器313、指纹传感器314、光学传感器315以及接近传感器316。
加速度传感器311可以检测以终端300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器311可以用于检测重力加速度在三个坐标轴上的分量。处理器301可以根据加速度传感器311采集的重力加速度信号,控制触摸显示屏305以横向视图或纵向视图进行用户界面的显示。加速度传感器311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器312可以检测终端300的机体方向及转动角度,陀螺仪传感器312可以与加速度传感器311协同采集用户对终端300的3D动作。处理器301根据陀螺仪传感器312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器313可以设置在终端300的侧边框和/或触摸显示屏305的下层。当压力传感器313设置在终端300的侧边框时,可以检测用户对终端300的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器313设置在触摸显示屏305的下层时,可以根据用户对触摸显示屏305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器314用于采集用户的指纹,以根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器314可以被设置终端300的正面、背面或侧面。当终端300上设置有物理按键或厂商Logo时,指纹传感器314可以与物理按键或厂商Logo集成在一起。
光学传感器315用于采集环境光强度。在一个实施例中,处理器301可以根据光学传感器315采集的环境光强度,控制触摸显示屏305的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏305的显示亮度;当环境光强度较低时,调低触摸显示屏305的显示亮度。在另一个实施例中,处理器301还可以根据光学传感器315采集的环境光强度,动态调整摄像头组件306的拍摄参数。
接近传感器316,也称距离传感器,通常设置在终端300的正面。接近传感器316用于采集用户与终端300的正面之间的距离。在一个实施例中,当接近传感器316检测到用户与终端300的正面之间的距离逐渐变小时,由处理器301控制触摸显示屏305从亮屏状态切换为息屏状态;当接近传感器316检测到用户与终端300的正面之间的距离逐渐变大时,由处理器301控制触摸显示屏305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图3中示出的结构并不构成对终端300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图4是本发明实施例提供的一种服务器的结构示意图,该服务器400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)401和一个或一个以上的存储器402,其中,存储器402中存储有至少一条指令,所述至少一条指令由处理器401加载并执行以实现上述生成反向测试用例的方法。
在示例性实施例中,还提供了一种计算机可读存储介质,存储介质中存储有至少一条指令,至少一条指令由处理器加载并执行以实现上述实施例中的生成反向测试用例的方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种生成反向测试用例的方法,其特征在于,所述方法包括:
获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;
基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;
将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。
2.根据权利要求1所述的方法,其特征在于,所述基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值,包括:
基于所述待测试的接口参数的参数值要求信息,以及预设的所述待测试的接口参数对应的待测试错误类型,生成不满足所述参数值要求信息的错误参数值。
3.根据权利要求2所述的方法,其特征在于,所述待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误。
4.根据权利要求1所述的方法,其特征在于,所述获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息之前,还包括:
接收参数设置消息,其中,所述参数设置消息携带有目标参数的标识信息和所述目标接口的标识信息;
将所述目标参数设置为所述目标接口的待测试的接口参数。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述反向测试用例添加到所述目标接口的测试用例集中;
当接收到所述目标接口的测试指令时,基于所述测试用例集中的所有测试用例,对所述目标接口进行测试。
6.根据权利要求5所述的方法,其特征在于,所述对所述目标接口进行测试之后,还包括:
将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
7.一种生成反向测试用例的装置,其特征在于,所述装置包括:
获取模块,用于获取目标接口的正向测试用例和所述目标接口的待测试的接口参数的参数值要求信息;
生成模块,用于基于所述待测试的接口参数的参数值要求信息,生成不满足所述参数值要求信息的错误参数值;
替换模块,用于将所述正向测试用例中所述待测试的接口参数的参数值,替换为所述错误参数值,得到所述目标接口的反向测试用例。
8.根据权利要求7所述的装置,其特征在于,所述生成模块,用于:
基于所述待测试的接口参数的参数值要求信息,以及预设的所述待测试的接口参数对应的待测试错误类型,生成不满足所述参数值要求信息的错误参数值。
9.根据权利要求8所述的装置,其特征在于,所述待测试错误类型,包括数据类型错误、特殊字符错误、大于最大边界值错误、小于最小边界值错误、大于最大溢出值错误、小于最小溢出值错误、跨站脚本攻击XSS注入错误、空字符串错误、大于最大字符数错误和必填项不填错误。
10.根据权利要求7所述的装置,其特征在于,所述装置还包括:
设置模块,用于接收参数设置消息,其中,所述参数设置消息携带有目标参数的标识信息和所述目标接口的标识信息,将所述目标参数设置为所述目标接口的待测试的接口参数。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
添加模块,用于将所述反向测试用例添加到所述目标接口的测试用例集中;
测试模块,用于当接收到所述目标接口的测试指令时,基于所述测试用例集中的所有测试用例,对所述目标接口进行测试。
12.根据权利要求11所述的装置,其特征在于,所述生成模块,还用于:
将测试得到的测试结果与预设的结果要求信息进行匹配比对,基于匹配比对的结果,生成测试报告。
13.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至6任一所述的生成反向测试用例的方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如权利要求1至6任一所述的生成反向测试用例的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811257020.1A CN109308265A (zh) | 2018-10-26 | 2018-10-26 | 生成反向测试用例的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811257020.1A CN109308265A (zh) | 2018-10-26 | 2018-10-26 | 生成反向测试用例的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109308265A true CN109308265A (zh) | 2019-02-05 |
Family
ID=65221984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811257020.1A Pending CN109308265A (zh) | 2018-10-26 | 2018-10-26 | 生成反向测试用例的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109308265A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881022A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 基于测试场景生成测试用例的方法、装置和设备 |
CN112346989A (zh) * | 2020-11-26 | 2021-02-09 | 网易(杭州)网络有限公司 | 一种接口测试方法、装置、介质和计算设备 |
CN112380114A (zh) * | 2020-11-05 | 2021-02-19 | 中国人寿保险股份有限公司 | 一种反向测试用例文件自动生成方法、装置及电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183335A (zh) * | 2007-12-25 | 2008-05-21 | 中兴通讯股份有限公司 | 一种实现嵌入式软件异常测试的方法及系统 |
CN102073584A (zh) * | 2010-11-09 | 2011-05-25 | 中国科学院软件研究所 | 基于附加测试的多参数系统错误模式快速定位方法 |
CN103186457A (zh) * | 2011-12-29 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 一种自动生成测试用例的方法和装置 |
CN104407976A (zh) * | 2014-11-28 | 2015-03-11 | 联动优势电子商务有限公司 | 一种接口健壮性测试用例生成方法及装置 |
CN104503900A (zh) * | 2014-11-21 | 2015-04-08 | 北京奇虎科技有限公司 | 测试用例生成方法及装置 |
CN104572463A (zh) * | 2014-12-31 | 2015-04-29 | 广州酷狗计算机科技有限公司 | 测试接口信息的方法及装置 |
US20150178183A1 (en) * | 2013-12-24 | 2015-06-25 | International Business Machines Corporation | Payload generation for computer software testing |
CN107203473A (zh) * | 2017-05-26 | 2017-09-26 | 四川长虹电器股份有限公司 | 自动扩展接口测试用例的自动化测试系统与方法 |
CN108427632A (zh) * | 2017-02-14 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 自动测试方法及装置 |
CN108595341A (zh) * | 2018-05-11 | 2018-09-28 | 清华大学 | 测试用例自动生成方法及系统 |
-
2018
- 2018-10-26 CN CN201811257020.1A patent/CN109308265A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183335A (zh) * | 2007-12-25 | 2008-05-21 | 中兴通讯股份有限公司 | 一种实现嵌入式软件异常测试的方法及系统 |
CN102073584A (zh) * | 2010-11-09 | 2011-05-25 | 中国科学院软件研究所 | 基于附加测试的多参数系统错误模式快速定位方法 |
CN103186457A (zh) * | 2011-12-29 | 2013-07-03 | 阿里巴巴集团控股有限公司 | 一种自动生成测试用例的方法和装置 |
US20150178183A1 (en) * | 2013-12-24 | 2015-06-25 | International Business Machines Corporation | Payload generation for computer software testing |
CN104503900A (zh) * | 2014-11-21 | 2015-04-08 | 北京奇虎科技有限公司 | 测试用例生成方法及装置 |
CN104407976A (zh) * | 2014-11-28 | 2015-03-11 | 联动优势电子商务有限公司 | 一种接口健壮性测试用例生成方法及装置 |
CN104572463A (zh) * | 2014-12-31 | 2015-04-29 | 广州酷狗计算机科技有限公司 | 测试接口信息的方法及装置 |
CN108427632A (zh) * | 2017-02-14 | 2018-08-21 | 腾讯科技(深圳)有限公司 | 自动测试方法及装置 |
CN107203473A (zh) * | 2017-05-26 | 2017-09-26 | 四川长虹电器股份有限公司 | 自动扩展接口测试用例的自动化测试系统与方法 |
CN108595341A (zh) * | 2018-05-11 | 2018-09-28 | 清华大学 | 测试用例自动生成方法及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111881022A (zh) * | 2020-07-07 | 2020-11-03 | 上海中通吉网络技术有限公司 | 基于测试场景生成测试用例的方法、装置和设备 |
CN112380114A (zh) * | 2020-11-05 | 2021-02-19 | 中国人寿保险股份有限公司 | 一种反向测试用例文件自动生成方法、装置及电子设备 |
CN112346989A (zh) * | 2020-11-26 | 2021-02-09 | 网易(杭州)网络有限公司 | 一种接口测试方法、装置、介质和计算设备 |
CN112346989B (zh) * | 2020-11-26 | 2023-06-20 | 网易(杭州)网络有限公司 | 一种接口测试方法、装置、介质和计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111290948B (zh) | 测试数据获取方法、装置、计算机设备及可读存储介质 | |
CN109061481A (zh) | 电池的荷电状态确定方法、装置及存储介质 | |
CN108897659A (zh) | 修改日志级别的方法、装置及存储介质 | |
CN109558837A (zh) | 人脸关键点检测方法、装置及存储介质 | |
CN109308265A (zh) | 生成反向测试用例的方法和装置 | |
CN112905328B (zh) | 任务处理方法、装置及计算机可读存储介质 | |
CN108132790A (zh) | 检测无用代码的方法、装置及计算机存储介质 | |
CN110392375A (zh) | WiFi网络信道修改方法、终端、服务器及存储介质 | |
CN110288689A (zh) | 对电子地图进行渲染的方法和装置 | |
CN109522146A (zh) | 对客户端进行异常测试的方法、装置及存储介质 | |
CN110535890A (zh) | 文件上传的方法和装置 | |
CN109089137A (zh) | 卡顿检测方法及装置 | |
CN109254775A (zh) | 基于人脸的图像处理方法、终端及存储介质 | |
CN109218751A (zh) | 推荐音频的方法、装置及系统 | |
CN110109770A (zh) | 调试方法、装置、电子设备及介质 | |
CN110471614B (zh) | 一种存储数据的方法、检测终端的方法及装置 | |
CN107943484A (zh) | 执行业务功能的方法和装置 | |
CN108829582A (zh) | 程序兼容的方法和装置 | |
CN108495183A (zh) | 显示专辑信息的方法和装置 | |
CN110263695A (zh) | 人脸部位的位置获取方法、装置、电子设备及存储介质 | |
CN109299319A (zh) | 音频信息的显示方法、装置、终端及存储介质 | |
CN109345447A (zh) | 面部替换处理的方法和装置 | |
CN113051485B (zh) | 群组搜索方法、装置、终端及存储介质 | |
CN114720932A (zh) | 一种电池管理系统信号采样精度测试方法、装置、上位机及存储介质 | |
CN110045999A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190205 |