CN111061636B - 软件自动测试方法、装置、计算机设备及存储介质 - Google Patents
软件自动测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111061636B CN111061636B CN201911274804.XA CN201911274804A CN111061636B CN 111061636 B CN111061636 B CN 111061636B CN 201911274804 A CN201911274804 A CN 201911274804A CN 111061636 B CN111061636 B CN 111061636B
- Authority
- CN
- China
- Prior art keywords
- request
- variable
- data
- response
- test
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000013522 software testing Methods 0.000 title claims description 20
- 230000004044 response Effects 0.000 claims abstract description 161
- 238000012545 processing Methods 0.000 claims abstract description 19
- 238000005457 optimization Methods 0.000 claims abstract description 10
- 238000006243 chemical reaction Methods 0.000 claims abstract description 9
- 238000012360 testing method Methods 0.000 claims description 55
- 238000004458 analytical method Methods 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 19
- 230000000977 initiatory effect Effects 0.000 claims description 12
- 230000008569 process Effects 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims description 3
- 238000010998 test method Methods 0.000 abstract description 9
- 230000000007 visual effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/3688—Test management for test execution, e.g. scheduling of test suites
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
技术领域
本发明涉及软件测试方法,更具体地说是指软件自动测试方法、装置、计算机设备及存储介质。
背景技术
目前现存的软件测试工作中,自动化测试工具在实际项目的测试环节中运用率并不高,由于工具开发的不够完善,缺少供实际项目测试的功能,在实际项目中涉及的某些需求功能点,现存的自动化测试工具并不能满足测试条件,进而导致这些功能点在测试环节只能进行重复性的人工测试验证,造成人工成本较高,效率较低。
因此,有必要设计一种新的方法,实现提高软件测试的效率。
发明内容
本发明的目的在于克服现有技术的缺陷,提供软件自动测试方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:软件自动测试方法,包括:
获取软件测试请求;
根据软件测试请求定义请求变量以及请求数据变量;
对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;
将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
其进一步技术方案为:所述软件测试请求包括发起软件测试请求的媒体方式、请求网络地址以及需测试的数据信息。
其进一步技术方案为:所述根据软件测试请求定义请求变量以及请求数据变量,包括:
将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;
将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
其进一步技术方案为:二次检查需求所对应的内容包括所携带的请求头和请求参数。
其进一步技术方案为:所述对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息,包括:
对所述请求数据变量进行内容长度解析,以得到解析结果;
将解析结果赋值于预先设定的响应变量,以得到响应量;
对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;
对响应数据转换为JSON格式数据;
对转换后的响应数据进行优化处理,以得到显示数据;
将显示数据与响应量整合,以形成显示信息。
其进一步技术方案为:所述对转换后的响应数据进行优化处理,以得到显示数据,包括:
基于HTML5/CSS3框架对响应数据的位置和内容间距进行优化,以得到显示数据。
本发明还提供了软件自动测试装置,包括:
请求获取单元,用于获取软件测试请求;
定义单元,用于根据软件测试请求定义请求变量以及请求数据变量;
解析单元,用于对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;
发送单元,用于将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
其进一步技术方案为:所述定义单元包括:
第一赋值子单元,用于将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;
第二赋值子单元,用于将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过从终端获取到软件测试请求后,将软件测试请求内的对应数据赋值到请求变量以及请求数据变量内,并将这些变量进行响应处理后,将响应后的内容以及变量进行格式转换、位置和内容间距优化处理后,显示在终端显示板块上指定的位置,以实现便于测试人员直观查阅信息,且实现提高软件测试的效率。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的软件自动测试方法的应用场景示意图;
图2为本发明实施例提供的软件自动测试方法的流程示意图;
图3为本发明实施例提供的软件自动测试方法的子流程示意图;
图4为本发明实施例提供的软件自动测试方法的子流程示意图;
图5为本发明实施例提供的软件自动测试装置的示意性框图;
图6为本发明实施例提供的软件自动测试装置的定义单元的示意性框图;
图7为本发明实施例提供的软件自动测试装置的解析单元的示意性框图;
图8为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1为本发明实施例提供的软件自动测试方法的应用场景示意图。图2为本发明实施例提供的软件自动测试方法的示意性流程图。该软件自动测试方法应用于服务器中。该服务器与终端进行数据交互,测试人员从终端的界面上输入内容,由此发起软件测试请求,并由服务器进行软件自动测试,以形成显示信息,并将显示信息发送至终端,在界面上特定位置上显示对应的显示信息。
图2是本发明实施例提供的软件自动测试方法的流程示意图。如图2所示,该方法包括以下步骤S110至S140。
S110、获取软件测试请求。
在本实施例中,软件测试请求是由测试人员通过终端的界面输入的发起软件测试请求的媒体方式、请求网络地址以及需测试的数据信息等信息,由此形成的请求。
S120、根据软件测试请求定义请求变量以及请求数据变量。
在本实施例中,请求变量是指接收自动化接口测试中软件测试请求的关于请求部分的数据,在现有的自动化测试工具,接口文件中只存在响应变量,即发起请求后响应数据的信息,不会设置一个请求变量进行接收终端发起的软件测试请求内的关于请求测试数据,也不会设置一个请求数据变量,用于接收依据实际情况新增需要进行二次检查或测试的内容。
设置请求变量和请求数据变量,便可与后续的响应对应起来,以增设请求数据变量对应的响应内容进行显示,以解决现存自动化工具既没有在代码文件中对请求数据部分进行定义和变量传递的设计即缺少对请求数据部分的信息提取和传递功能。还可以将测试人员发起请求后所输入或传递的请求信息在自动化测试界面直接阅览到,简单方便。
在一实施例中,请参阅图3,上述的步骤S120可包括步骤S121~S122。
S121、将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;
S122、将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
设定请求变量为reqeust,用于接收自动化接口测试中需测试的数据信息中关于请求测试数据;请求数据变量用于接收发起请求过程中,请求变量需测试的数据信息中二次检查需求所对应的内容。在本实施例中,二次检查需求所对应的内容包括所携带的请求头和请求参数。即当测试人员使用自动化测试工具发起接口自动化测试时,发起软件测试请求后,软件测试请求内的需测试的数据信息中的请求头和请求参数分别传递给定义的请求数据变量,也就是通过在前端代码终端接口文件中,新增了有关请求部分和界面回显的代码块,该代码块是针对请求数据变量存在的。
S130、对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息。
在本实施例中,显示信息是指用于显示在终端上的内容,包括响应请求变量的数据以及响应请求数据变量的数据。设定请求数据变量分别为request.headers、request.body、request.url,请求数据变量的设定是依据react语法。
在一实施例中,请参阅图4,上述的步骤S130可包括步骤S131~S136。
S131、对所述请求数据变量进行内容长度解析,以得到解析结果。
在本实施例中,解析结果是指对请求数据变量进行测试响应,形成的内容。
S132、将解析结果赋值于预先设定的响应变量,以得到响应量。
在本实施例中,响应量是指将响应形成的内容复制到预先设定好的响应变量内,该响应变量在终端界面上哪一显示板块上显示是固定。
S133、对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;
响应头和响应体分别指对请求数据变量内的请求头和请求参数的响应形成的结果。
S134、对响应数据转换为JSON格式数据。
在本实施例中,具体是基于react语法的toString方法将响应数据(response.header和response.body)转换为易于浏览器和用户操作的JSON格式数据
S135、对转换后的响应数据进行优化处理,以得到显示数据。
在本实施例中,显示数据是指经过位置调节和间距调节后形成的JSON格式数据的响应数据。
在本实施例中,基于HTML5/CSS3框架对响应数据的位置和内容间距进行优化,以得到显示数据,使其显示到终端界面的显示板块的合理位置;服务器的response代码块解析请求头和请求参数并做出响应,将响应头和响应体回显到终端的测试工具响应界面。
S136、将显示数据与响应量整合,以形成显示信息。
在本实施例中,显示信息是指在终端界面上特定的位置进行显示的响应量、响应头和响应体。
在终端界面上的Headers文本框中测试人员所输入的content-type以及发起请求的URL,content-type代表发起请求的媒体方式,发起请求的URL代表请求网络地址,比如所输入的content-type为application/x-www-form-urlencoded媒体方式,表示键值对形式的请求;同理终端界面上的Body列表栏中测试人员所输入的各类信息代表发起请求的参数,如name、phone等,开始进行自动化接口测试,由上述的内容组成软件测试请求,并发送软件测试请求。服务器的代码块接收测试人员以某种媒体方式发起的软件测试请求,软件测试请求包含请求URL和请求参数等。终端与接口地址即请求URL建立连接,服务器的代码块对请求数据变量进行解析。在现有的终端接口文件代码中,已定义了响应变量response以及响应数据变量response.header和response.body,分别用来接收响应变量中的响应头和响应体的数据,测试人员发起软件测试请求,服务器代码的对此次请求数据变量的内容长度进行解析,得到响应结果是60,然后通过代码间的模块module.exports方法传递给终端接口文件的响应变量response,当然也包括其他参数,如请求状态、发起请求的时间、建立连接的方式、服务器名称以及请求是否成功等。这些都是测试人员发起请求后的响应数据,都会显示到终端界面中对应的Response板块中。
与Response响应数据部分显示板块相隔的,则是新增的Request-Tab请求数据部分的前台页面显示板块,同样也分为Headers和Body两部分,其中,Headers板块显示请求头的数据request.headers、request.url,Body板块显示请求参数的数据request.body。具体的实现与Response响应板块相似,即上面描述的自动化测试工具对响应数据的处理方式,也同样适用于新增的请求模块部分。如浏览器页面显示JSON格式的方法,内容间距等也是利用react语言和HTML语言,分别对请求头数据(request.headers,request.url)和请求体数据(request.body)进行处理。但在处理调用请求数据方法上与响应数据有所区别。即不需要用到服务端接口文件的进行处理,因为在发起请求后,请求头或请求参数数据已经存在于终端的接口文件中了。例如当测试人员在自动化测试工具上发起请求后,请求数据-前文讲述的测试人员在工具界面输入的请求头,请求参数以及请求URL,在测试人员发起接口测试请求后,这些请求数据是于终端上提交的,会立刻显示到终端接口文件中。之前设定的请求变量request,会将代码文件中的请求部分的信息全部提取,并把相应的请求头和请求参数,即测试人员的需求数据分别赋给请求数据变量request.headers、request.url、request.body。
S140、将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
对请求变量以及请求数据变量转换为JSON格式数据,并将转换后的变量进行优化处理,再发送至终端显示,具体地,基于react语法的toString方法将请求变量以及请求数据变量转换为易于浏览器和用户操作的JSON格式数据,基于HTML5/CSS3框架对请求变量以及请求数据变量的位置和内容间距进行优化,使其显示到终端界面的显示板块的合理位置。
在自动化测试工具界面,Response响应数据板块的仍然存在,而新增的Request请求数据板块在页面布局上与Response响应数据板块一致,包括数据展示成JSON格式,数据的间距、字体等也与响应部分相同。请求部分的数据不需要服务器进行处理,只需在测试人员发起软件测试请求后,将发起软件测试请求的数据提取赋予定义过的请求变量以及请求数据变量,由服务器将这些数据赋值给这些变量,然后再传递给对应的数据变量,最后将含有测试人员发起请求的数据信息的数据变量如request.headers、request.url、request.body反映到前台工具页面上。在终端接口文件代码中添加了接收、传递请求数据和数据页面回显功能;也在终端界面上将请求数据进行了直观的显示;有效提升了测试人员的测试体验,即更方便更直观的显示数据信息,无需再利用其他工具查看。所以在实际项目的测试需求下达后,这样升级功能后的自动化测试工具会帮助测试人员提升测试效率,节省时间开销,还可以依据实际情况更换需要二次检查的内容,也就是发起请求时更改请求头以及请求参数,便可实现依据实际情况更换终端显示内容。
上述的软件自动测试方法,通过从终端获取到软件测试请求后,将软件测试请求内的对应数据赋值到请求变量以及请求数据变量内,并将这些变量进行响应处理后,将响应后的内容以及变量进行格式转换、位置和内容间距优化处理后,显示在终端显示板块上指定的位置,以实现便于测试人员直观查阅信息,且实现提高软件测试的效率。
图5是本发明实施例提供的一种软件自动测试装置300的示意性框图。如图5所示,对应于以上软件自动测试方法,本发明还提供一种软件自动测试装置300。该软件自动测试装置300包括用于执行上述软件自动测试方法的单元,该装置可以被配置于服务器中。具体地,请参阅图5,该软件自动测试装置300包括请求获取单元301、定义单元302、解析单元303以及发送单元304。
请求获取单元301,用于获取软件测试请求;定义单元302,用于根据软件测试请求定义请求变量以及请求数据变量;解析单元303,用于对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;发送单元304,用于将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
在一实施例中,如图6所示,所述定义单元302包括第一赋值子单元3021以及第二赋值子单元3022。
第一赋值子单元3021,用于将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;第二赋值子单元3022,用于将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
在一实施例中,如图7所示,所述解析单元303包括长度解析子单元3031、结果赋值子单元3032、变量解析子单元3033、格式转换子单元3034、优化处理子单元3035以及整合子单元3036。
长度解析子单元3031,用于对所述请求数据变量进行内容长度解析,以得到解析结果;结果赋值子单元3032,用于将解析结果赋值于预先设定的响应变量,以得到响应量;变量解析子单元3033,用于对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;格式转换子单元3034,用于对响应数据转换为JSON格式数据;优化处理子单元3035,用于对转换后的响应数据进行优化处理,以得到显示数据;整合子单元3036,用于将显示数据与响应量整合,以形成显示信息。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述软件自动测试装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述软件自动测试装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图8所示的计算机设备上运行。
请参阅图8,图8是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500是服务器。
参阅图8,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种软件自动测试方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种软件自动测试方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取软件测试请求;根据软件测试请求定义请求变量以及请求数据变量;对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
其中,所述软件测试请求包括发起软件测试请求的媒体方式、请求网络地址以及需测试的数据信息。
在一实施例中,处理器502在实现所述根据软件测试请求定义请求变量以及请求数据变量步骤时,具体实现如下步骤:
将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
其中,二次检查需求所对应的内容包括所携带的请求头和请求参数。
在一实施例中,处理器502在实现所述对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息步骤时,具体实现如下步骤:
对所述请求数据变量进行内容长度解析,以得到解析结果;
将解析结果赋值于预先设定的响应变量,以得到响应量;
对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;
对响应数据转换为JSON格式数据;
对转换后的响应数据进行优化处理,以得到显示数据;
将显示数据与响应量整合,以形成显示信息。
在一实施例中,处理器502在实现所述对转换后的响应数据进行优化处理,以得到显示数据步骤时,具体实现如下步骤:
基于HTML5/CSS3框架对响应数据的位置和内容间距进行优化,以得到显示数据。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取软件测试请求;根据软件测试请求定义请求变量以及请求数据变量;对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量。
其中,所述软件测试请求包括发起软件测试请求的媒体方式、请求网络地址以及需测试的数据信息。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据软件测试请求定义请求变量以及请求数据变量步骤时,具体实现如下步骤:
将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量。
其中,二次检查需求所对应的内容包括所携带的请求头和请求参数。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息步骤时,具体实现如下步骤:
对所述请求数据变量进行内容长度解析,以得到解析结果;将解析结果赋值于预先设定的响应变量,以得到响应量;对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;对响应数据转换为JSON格式数据;对转换后的响应数据进行优化处理,以得到显示数据;将显示数据与响应量整合,以形成显示信息。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对转换后的响应数据进行优化处理,以得到显示数据步骤时,具体实现如下步骤:
基于HTML5/CSS3框架对响应数据的位置和内容间距进行优化,以得到显示数据。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.软件自动测试方法,其特征在于,包括:
获取软件测试请求;
根据软件测试请求定义请求变量以及请求数据变量;请求变量是指接收自动化接口测试中软件测试请求的关于请求部分的数据;
对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;
将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量;
所述根据软件测试请求定义请求变量以及请求数据变量,包括:
将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;
将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量;
设定请求变量为reqeust,用于接收自动化接口测试中需测试的数据信息中关于请求测试数据;请求数据变量用于接收发起请求过程中,请求变量需测试的数据信息中二次检查需求所对应的内容,二次检查需求所对应的内容包括所携带的请求头和请求参数,即当测试人员使用自动化测试工具发起接口自动化测试时,发起软件测试请求后,软件测试请求内的需测试的数据信息中的请求头和请求参数分别传递给定义的请求数据变量,就是通过在前端代码终端接口文件中,新增了有关请求部分和界面回显的代码块,该代码块是针对请求数据变量存在的;
所述软件测试请求包括发起软件测试请求的媒体方式、请求网络地址以及需测试的数据信息;
所述对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息,包括:
对所述请求数据变量进行内容长度解析,以得到解析结果;
将解析结果赋值于预先设定的响应变量,以得到响应量;
对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;
对响应数据转换为JSON格式数据;
对转换后的响应数据进行优化处理,以得到显示数据;
将显示数据与响应量整合,以形成显示信息;
显示信息包括响应请求变量的数据以及响应请求数据变量的数据;设定请求数据变量分别为request.headers、request.body、request.url,请求数据变量的设定是依据react语法。
2.根据权利要求1所述的软件自动测试方法,其特征在于,二次检查需求所对应的内容包括所携带的请求头和请求参数。
3.根据权利要求1所述的软件自动测试方法,其特征在于,所述对转换后的响应数据进行优化处理,以得到显示数据,包括:
基于HTML5/CSS3框架对响应数据的位置和内容间距进行优化,以得到显示数据。
4.软件自动测试装置,其特征在于,包括:
请求获取单元,用于获取软件测试请求;
定义单元,用于根据软件测试请求定义请求变量以及请求数据变量;请求变量是指接收自动化接口测试中软件测试请求的关于请求部分的数据;
解析单元,用于对所述请求变量以及请求数据变量进行解析,并赋值于预先设定的响应变量以及响应数据变量,以得到显示信息;
发送单元,用于将显示信息、请求变量以及请求数据变量发送至终端,以在终端上显示所述显示信息、请求变量以及请求数据变量;
所述定义单元包括:
第一赋值子单元,用于将软件测试请求内的需测试的数据信息中关于请求测试数据赋值于请求变量;
第二赋值子单元,用于将软件测试请求内的需测试的数据信息中二次检查需求所对应的内容赋值于请求数据变量;
设定请求变量为reqeust,用于接收自动化接口测试中需测试的数据信息中关于请求测试数据;请求数据变量用于接收发起请求过程中,请求变量需测试的数据信息中二次检查需求所对应的内容,二次检查需求所对应的内容包括所携带的请求头和请求参数,即当测试人员使用自动化测试工具发起接口自动化测试时,发起软件测试请求后,软件测试请求内的需测试的数据信息中的请求头和请求参数分别传递给定义的请求数据变量,就是通过在前端代码终端接口文件中,新增了有关请求部分和界面回显的代码块,该代码块是针对请求数据变量存在的;
所述解析单元包括长度解析子单元、结果赋值子单元、变量解析子单元、格式转换子单元、优化处理子单元以及整合子单元;
长度解析子单元,用于对所述请求数据变量进行内容长度解析,以得到解析结果;结果赋值子单元,用于将解析结果赋值于预先设定的响应变量,以得到响应量;变量解析子单元,用于对所述请求数据变量进行解析,以得到响应头和响应体,并将响应头和响应体赋值于预先设定的响应数据变量,以得到响应数据;格式转换子单元,用于对响应数据转换为JSON格式数据;优化处理子单元,用于对转换后的响应数据进行优化处理,以得到显示数据;整合子单元,用于将显示数据与响应量整合,以形成显示信息;显示信息包括响应请求变量的数据以及响应请求数据变量的数据;设定请求数据变量分别为request.headers、request.body、request.url,请求数据变量的设定是依据react语法。
5.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述的方法。
6.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911274804.XA CN111061636B (zh) | 2019-12-12 | 2019-12-12 | 软件自动测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911274804.XA CN111061636B (zh) | 2019-12-12 | 2019-12-12 | 软件自动测试方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111061636A CN111061636A (zh) | 2020-04-24 |
CN111061636B true CN111061636B (zh) | 2023-12-05 |
Family
ID=70298832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911274804.XA Active CN111061636B (zh) | 2019-12-12 | 2019-12-12 | 软件自动测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111061636B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7512039B1 (en) * | 2003-05-27 | 2009-03-31 | Oracle International Corporation | Method for enhancing functionality of an automated testing tool |
CN108512710A (zh) * | 2017-02-24 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 基于测试工具的测试方法和测试工具 |
CN109710533A (zh) * | 2018-12-29 | 2019-05-03 | 亚信科技(中国)有限公司 | 一种接口测试方法、装置及服务器 |
CN110232013A (zh) * | 2019-02-25 | 2019-09-13 | 上海蔚来汽车有限公司 | 测试方法、装置以及控制器和介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150128103A1 (en) * | 2013-11-07 | 2015-05-07 | Runscope, Inc. | System and method for automating application programming interface integration |
-
2019
- 2019-12-12 CN CN201911274804.XA patent/CN111061636B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7512039B1 (en) * | 2003-05-27 | 2009-03-31 | Oracle International Corporation | Method for enhancing functionality of an automated testing tool |
CN108512710A (zh) * | 2017-02-24 | 2018-09-07 | 腾讯科技(深圳)有限公司 | 基于测试工具的测试方法和测试工具 |
CN109710533A (zh) * | 2018-12-29 | 2019-05-03 | 亚信科技(中国)有限公司 | 一种接口测试方法、装置及服务器 |
CN110232013A (zh) * | 2019-02-25 | 2019-09-13 | 上海蔚来汽车有限公司 | 测试方法、装置以及控制器和介质 |
Non-Patent Citations (1)
Title |
---|
基于QTP的高速公路收费软件自动测试框架;束进;《上海船舶运输科学研究所学报》;第37卷(第02期);56-60 * |
Also Published As
Publication number | Publication date |
---|---|
CN111061636A (zh) | 2020-04-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111083225B (zh) | 在物联网平台中的数据处理方法、装置及物联网平台 | |
CN106484611B (zh) | 基于自动化协议适配的模糊测试方法和装置 | |
CN107508720B (zh) | 一种自动化测试方法及装置 | |
CN111475417A (zh) | 自动化测试方法、装置、设备及存储介质 | |
CN108965293B (zh) | 报文解析方法和装置、电子设备 | |
CN111917603A (zh) | 客户端测试方法、装置、计算机设备及存储介质 | |
CN112631937A (zh) | 一种T-Box的CAN操作自动化测试方法及装置 | |
CN111427784A (zh) | 一种数据获取方法、装置、设备及存储介质 | |
CN111045934A (zh) | 页面分析方法、装置、客户端、存储介质及电子设备 | |
CN110874278A (zh) | 外部系统的嵌入方法、工作流系统、设备及存储介质 | |
CN112199470B (zh) | 一种基于会话的客诉服务方法、智能终端及存储介质 | |
CN112770108B (zh) | 性能的测试方法、装置、系统及计算机可读存储介质 | |
CN116204477A (zh) | Can信号的解析方法、生成方法、设备和存储介质 | |
CN111061636B (zh) | 软件自动测试方法、装置、计算机设备及存储介质 | |
CN116991733A (zh) | 接口测试方法、设备及介质 | |
CN109800330B (zh) | 一种数据处理方法及装置 | |
CN110768860A (zh) | 一种测试方法、测试装置及电子设备 | |
CN114374745B (zh) | 一种协议格式的处理方法及系统 | |
CN111338928A (zh) | 基于chrome浏览器测试的方法及装置 | |
CN115600038A (zh) | 页面渲染方法、装置、设备及介质 | |
CN112769848B (zh) | 一种报文发送方法及装置 | |
US20160179480A1 (en) | Computer application development assistance | |
CN114371866A (zh) | 业务系统的版本重构测试方法、装置和设备 | |
CN101493811A (zh) | 字体自动识别与转换系统及方法 | |
CN106406888B (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 |