CN111090589A - 软件测试方法、软件测试装置及可读存储介质 - Google Patents
软件测试方法、软件测试装置及可读存储介质 Download PDFInfo
- Publication number
- CN111090589A CN111090589A CN201911321360.0A CN201911321360A CN111090589A CN 111090589 A CN111090589 A CN 111090589A CN 201911321360 A CN201911321360 A CN 201911321360A CN 111090589 A CN111090589 A CN 111090589A
- Authority
- CN
- China
- Prior art keywords
- mock
- target
- rule
- software testing
- software
- 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
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/3688—Test management for test execution, e.g. scheduling of test suites
Abstract
本发明公开了一种软件测试方法,包括以下步骤:在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;将所述目标注解对应的mock规则的参数修改为所述目标参数;将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。本发明还公开了一种软件测试装置及计算机可读存储介质,达成了提高软件测试系统的测试效率的效果。
Description
技术领域
本发明涉及软件测试技术领域,尤其涉及软件测试方法、软件测试装置及计算机可读存储介质。
背景技术
在自动化测试过程中经常需要获取线上系统数据。为提高测试的代码覆盖率以及测试的全面性,需要获取多维度的初始数据,以基于多维度的初始数据对系统代码件测试。
为丰富初始数据的维度,一般会通过mock(虚拟数据)系统获取上述多维度的初始数据。而传统mock系统在在生产多维度初始数据时,需要用户预先选定对应的处理规则,以根据对应的处理规则生成对应的数据。导致现有的mock系统不支持动态规则匹配,这样存在软件测试系统的测试效率较低的缺陷。
发明内容
本发明的主要目的在于提供一种软件测试方法、软件测试装置及计算机可读存储介质,旨在达成提高软件测试系统的测试效率的效果。
为实现上述目的,本发明提供一种软件测试方法,所述软件测试方法包括以下步骤:
在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;
将所述目标注解对应的mock规则的参数修改为所述目标参数;
将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。
可选地,所述将所述目标注解对应的mock规则的参数修改为所述目标参数的步骤包括:
获取本地数据库中保存的所述目标注解对应的初始mock规则;
将所述初始mock规则的参数修改为所述目标参数。
可选地,所述获取本地数据库中保存的初始mock规则的步骤之前,还包括:
当本地数据库中未保存有所述初始mock规则时,输出提示信息,以供用户在接收到所述提示信息时,在所述本地数据库中添加所述初始mock规则。
可选地,所述初始mock规则基于类名和方法名维度分类保存在本地数据库中。
可选地,所述将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据的步骤之后,还包括:
接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试。
可选地,所述接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试的步骤之后,还包括:
获取所述待测软件的测试结果;
根据所述测试结果生成测试报告,并输出所述测试报告。
此外,为实现上述目的,本发明还提供一种软件测试装置,所述软件测试装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的软件测试装置的控制程序,所述软件测试装置的控制程序被所述处理器执行时实现如上所述的软件测试方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有软件测试装置的控制程序,所述软件测试装置的控制程序被处理器执行时实现如上所述的软件测试方法的步骤。
本发明实施例提出的一种软件测试方法、软件测试装置及计算机可读存储介质,在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数,将所述目标注解对应的mock规则的参数修改为所述目标参数,将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。由于可以自动修改mock规则中对应的参数,从而使得mock系统可以支持动态匹配规则,这样达成了提高软件测试系统的测试效率的效果。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图;
图2为本发明软件测试方法一实施例的流程示意图;
图3为本发明另一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为丰富初始数据的维度,一般会通过mock(虚拟数据)系统获取上述多维度的初始数据。而传统mock系统在在生产多维度初始数据时,需要用户预先选定对应的处理规则,以根据对应的处理规则生成对应的数据。导致现有的mock系统不支持动态规则匹配,这样存在软件测试系统的测试效率较低的缺陷。
为解决上述缺陷,本发明实施例提出一种软件测试方法、软件测试装置及计算机可读存储介质,在本发明实施例中,所述软件测试方法的主要解决方案为:
在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;
将所述目标注解对应的mock规则的参数修改为所述目标参数;
将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。
由于可以自动修改mock规则中对应的参数,从而使得mock系统可以支持动态匹配规则,这样达成了提高软件测试系统的测试效率的效果。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的终端结构示意图。
本发明实施例终端可以是PC机等终端设备。
如图1所示,该终端可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard)、鼠标等,可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及软件测试装置的控制程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;处理器1001可以用于调用存储器1005中存储的软件测试装置的控制程序,并执行以下操作:
在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;
将所述目标注解对应的mock规则的参数修改为所述目标参数;
将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。
进一步地,处理器1001可以调用存储器1005中存储的软件测试装置的控制程序,还执行以下操作:
获取本地数据库中保存的所述目标注解对应的初始mock规则;
将所述初始mock规则的参数修改为所述目标参数。
进一步地,处理器1001可以调用存储器1005中存储的软件测试装置的控制程序,还执行以下操作:
当本地数据库中未保存有所述初始mock规则时,输出提示信息,以供用户在接收到所述提示信息时,在所述本地数据库中添加所述初始mock规则。
进一步地,处理器1001可以调用存储器1005中存储的软件测试装置的控制程序,还执行以下操作:
接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试。
进一步地,处理器1001可以调用存储器1005中存储的软件测试装置的控制程序,还执行以下操作:
获取所述待测软件的测试结果;
根据所述测试结果生成测试报告,并输出所述测试报告。
参照图2,在本发明软件测试方法的一实施例中,所述软件测试方法包括以下步骤:
步骤S10、在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;
步骤S20、将所述目标注解对应的mock规则的参数修改为所述目标参数;
步骤S30、将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。
在本实施例中,用户可以通过手动触发的方式控制软件测试装置执行预设的测试用例,也可以通过定时触发或者条件触发的方式控制软件测试装置开始执行预设测试用例。
具体地,软件测试装置可以输出软件测试界面,用户可以通过输入装置,例如鼠标和/或键盘等在所述软件测试界面中触发对应的测试控件,在所述测试控件被触发时,软件测试装置开始执行测试用例。或者用户可以预先设置测试用例的执行时间和/或执行条件,在当前时间点满足所述测试用例的执行时间和/或系统状态满足所述执行条件时,软件测试装置自动开始执行所述测试用例。其中,所述测试条件可以由测试人员自定义设置,例如,可以设置为:“在检测到Git库发生代码更新时,判定满足所述执行条件”。
在所述测试用例开始执行时,可以获取所述测试用例对应的目标注解及目标参数。其中,所述目标注解是指所述测试用例相关的mock规则的元数据。基于所述目标注解,软件测试装置可以在数据库中获取到所述目标注解对应的mock规则。所述目标参数是指所述测试用例涉及的mock数据对应的参数。
当获取到所述目标参数和目标注解后。可以先根据所述目标注解在本地数据库中获取目标注解对应的初始mock规则,即修改前的mock规则。其中,所述初始mock规则可以是不包含任何参数的mock规则。也可以是包含参数的mock规则。
当获取到所述初始mock规则后,可以将获取到的初始mock规则中的参数修改为所述目标参数。然后将本地数据库中保存的初始mock替换为包含所述目标参数的mock规则。
进一步地,可以将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。其中,所述目标mock规则包括初始所述初始mock规则,及相关的目标参数。
具体地,目标mock规则传入mock服务器后,所述mock服务器在接收到所述测试用例相对应的请求时,基于所述目标mock规则确定所述请求对应的mock数据。并将所述请求数据反馈至软件测试装置。使得软件测试装置在接收到所述mock数据后,可以基于所述mock数据对待测软件进行软件测试。
可以理解的是,为使得可以基于所述目标注解获取到相应mock规则,所述mock规则可以基于类名和方法名维度分类保存在本地数据库中。
可选地,在获取目标注解对应的mock规则,并修改获取到的mock规则中的参数时。可以在确定所述目标注解后,先判断所述本地数据库中是否保存有所述初始mock规则。当本地数据库中未保存有所述初始mock规则时,输出提示信息,以供用户在接收到所述提示信息时,在所述本地数据库中添加所述初始mock规则。当本地数据库中保存有所述初始mock规则时,获取本地数据库中保存的所述目标注解对应的初始mock规则,并将所述初始mock规则的参数修改为所述目标参数。
在本实施例公开的技术方案中,在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数,将所述目标注解对应的mock规则的参数修改为所述目标参数,将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。由于可以自动修改mock规则中对应的参数,从而使得mock系统可以支持动态匹配规则,这样达成了提高软件测试系统的测试效率的效果。
参照图3,基于上述实施例,在另一实施例中,所述步骤S30之后,还包括:
步骤S40、接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试。
在本实施例中,当软件测试装置在执行测试用例时,可以向mock服务器发送所述测试用例对应的请求。以基于所述请求,通过mock服务器获取所述测试用例在执行过程中所需的mock数据。当mock服务器接收到所述请求时,基于所述请求和目标mock规则确定所述mock数据。并将所述mock数据反馈至所述软件处测试装置。
进一步地,所述软件测试装置接收到所述mock数据后,可以基于所述mock数据对待测软件进行测试。并确定软件测试结果。
可选地,当确定所述软件测试结果后,可以获取所述待测软件的测试结果,根据所述测试结果生成测试报告,并输出所述测试报告。
其中,在输出所述测试报告时,可以直接在软件测试装置对应的显示装置上输出所述测试报告。或者也可以在接收到查询指令时,在软件测试装置对应的显示装置上输出所述测试报告。还可以基于用户预先设定的通信地址,以微信推送,邮件推送等方式向用户推送所述测试报告。
在本实施公开的技术方案中,接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试,由于所述mock数据时mock服务器根据目标mock规则确定的,从而使得软件测试装置可以覆盖更多线上不存在的场景,这样达成了提高软件的测试的代码覆盖率的效果。
此外,本发明实施例还提出一种软件测试装置,所述软件测试装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的软件测试装置的控制程序,所述软件测试装置的控制程序被所述处理器执行时实现如上各个实施例所述的软件测试方法的步骤。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有软件测试装置的控制程序,所述软件测试装置的控制程序被处理器执行时实现如上各个实施例所述的软件测试方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是PC机等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种软件测试方法,其特征在于,所述软件测试方法包括以下步骤:
在测试用例开始执行时,获取所述测试用例对应的目标注解以及目标参数;
将所述目标注解对应的mock规则的参数修改为所述目标参数;
将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据。
2.如权利要求1所述的软件测试方法,其特征在于,所述将所述目标注解对应的mock规则的参数修改为所述目标参数的步骤包括:
获取本地数据库中保存的所述目标注解对应的初始mock规则;
将所述初始mock规则的参数修改为所述目标参数。
3.如权利要求2所述的软件测试方法,其特征在于,所述获取本地数据库中保存的初始mock规则的步骤之前,还包括:
当本地数据库中未保存有所述初始mock规则时,输出提示信息,以供用户在接收到所述提示信息时,在所述本地数据库中添加所述初始mock规则。
4.如权利要求2所述的软件测试方法,其特征在于,所述初始mock规则基于类名和方法名维度分类保存在本地数据库中。
5.如权利要求1所述的软件测试方法,其特征在于,所述将修改后的所述mock规则作为目标mock规则传入mock服务器,以供所述mock服务器基于目标mock规则生成对应的mock数据的步骤之后,还包括:
接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试。
6.如权利要求1所述的软件测试方法,其特征在于,所述接收所述mock服务反馈的mock数据,并基于所述mock数据对待测软件进行测试的步骤之后,还包括:
获取所述待测软件的测试结果;
根据所述测试结果生成测试报告,并输出所述测试报告。
7.一种软件测试装置,其特征在于,所述软件测试装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的软件测试装置的控制程序,所述软件测试装置的控制程序被所述处理器执行时实现如权利要求1至6中任一项所述的软件测试方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有软件测试装置的控制程序,所述软件测试装置的控制程序被处理器执行时实现如权利要求1至6中任一项所述的软件测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911321360.0A CN111090589A (zh) | 2019-12-19 | 2019-12-19 | 软件测试方法、软件测试装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911321360.0A CN111090589A (zh) | 2019-12-19 | 2019-12-19 | 软件测试方法、软件测试装置及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111090589A true CN111090589A (zh) | 2020-05-01 |
Family
ID=70395885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911321360.0A Pending CN111090589A (zh) | 2019-12-19 | 2019-12-19 | 软件测试方法、软件测试装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111090589A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666087A (zh) * | 2020-05-28 | 2020-09-15 | 平安医疗健康管理股份有限公司 | 运算规则更新方法、装置、计算机系统及可读存储介质 |
CN113032275A (zh) * | 2021-04-08 | 2021-06-25 | 平安国际智慧城市科技股份有限公司 | 字段测试方法、装置、电子设备及存储介质 |
CN113760703A (zh) * | 2020-09-07 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种Mock数据的生成方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729246A (zh) * | 2017-10-13 | 2018-02-23 | 广州阿里巴巴文学信息技术有限公司 | 针对目标应用的辅助测试方法、装置、设备及存储介质 |
US20180322036A1 (en) * | 2017-05-03 | 2018-11-08 | International Business Machines Corporation | Software testing and verification |
CN109101430A (zh) * | 2018-08-24 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 测试方法、装置和设备 |
CN110347596A (zh) * | 2019-07-02 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置、系统、电子设备及介质 |
CN110362472A (zh) * | 2019-05-31 | 2019-10-22 | 口碑(上海)信息技术有限公司 | Mock测试方法、装置及设备 |
-
2019
- 2019-12-19 CN CN201911321360.0A patent/CN111090589A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180322036A1 (en) * | 2017-05-03 | 2018-11-08 | International Business Machines Corporation | Software testing and verification |
CN107729246A (zh) * | 2017-10-13 | 2018-02-23 | 广州阿里巴巴文学信息技术有限公司 | 针对目标应用的辅助测试方法、装置、设备及存储介质 |
CN109101430A (zh) * | 2018-08-24 | 2018-12-28 | 阿里巴巴集团控股有限公司 | 测试方法、装置和设备 |
CN110362472A (zh) * | 2019-05-31 | 2019-10-22 | 口碑(上海)信息技术有限公司 | Mock测试方法、装置及设备 |
CN110347596A (zh) * | 2019-07-02 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置、系统、电子设备及介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111666087A (zh) * | 2020-05-28 | 2020-09-15 | 平安医疗健康管理股份有限公司 | 运算规则更新方法、装置、计算机系统及可读存储介质 |
CN113760703A (zh) * | 2020-09-07 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 一种Mock数据的生成方法、装置、设备及存储介质 |
CN113032275A (zh) * | 2021-04-08 | 2021-06-25 | 平安国际智慧城市科技股份有限公司 | 字段测试方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108255730B (zh) | 软件接口测试方法、测试设备、存储介质及装置 | |
CN107665233B (zh) | 数据库数据处理方法、装置、计算机设备和存储介质 | |
CN111090589A (zh) | 软件测试方法、软件测试装置及可读存储介质 | |
CN109558320B (zh) | 系统测试方法、装置、系统、设备及计算机可读存储介质 | |
CN106406844B (zh) | 实现通讯交互平台公众号菜单的方法和装置 | |
CN108959067B (zh) | 搜索引擎的测试方法、装置及计算机可读存储介质 | |
CN111240653A (zh) | 接口文档生成方法、装置及可读存储介质 | |
CN107678948B (zh) | 测试用例生成方法、终端及存储介质 | |
CN111104324A (zh) | 测试用例的生成方法、生成装置及计算机可读存储介质 | |
CN107807841B (zh) | 服务器模拟方法、装置、设备及可读存储介质 | |
CN111181805B (zh) | 一种基于测试用例的微服务测试挡板生成方法及系统 | |
CN112214714A (zh) | 基于配置文件的请求处理方法、装置、设备及存储介质 | |
CN111026670A (zh) | 测试用例的生成方法、测试用例的生成装置及存储介质 | |
CN108415998B (zh) | 应用依赖关系更新方法、终端、设备及存储介质 | |
CN110135163B (zh) | 一种基于目标应用的安全检测方法、装置及系统 | |
CN111045879A (zh) | 压力测试报告的生成方法、装置及存储介质 | |
CN110543429A (zh) | 测试用例调试方法、装置及存储介质 | |
CN112035412A (zh) | 数据文件导入方法、设备、存储介质及装置 | |
CN111061637A (zh) | 接口测试方法、接口测试装置及存储介质 | |
CN111104323A (zh) | 应用程序的功能测试方法、系统、代理服务器及存储介质 | |
CN111078562A (zh) | 接口测试方法、终端设备及计算机可读存储介质 | |
CN111125205A (zh) | 看板数据显示方法、终端及存储介质 | |
CN110874278A (zh) | 外部系统的嵌入方法、工作流系统、设备及存储介质 | |
KR101753314B1 (ko) | 이미지 매칭 학습을 이용한 어플리케이션 테스트 방법 및 이를 수행하기 위한 장치 | |
CN111045720B (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 |