CN108681504A - 自动化测试方法、测试服务器及计算机可读存储介质 - Google Patents
自动化测试方法、测试服务器及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108681504A CN108681504A CN201810332032.XA CN201810332032A CN108681504A CN 108681504 A CN108681504 A CN 108681504A CN 201810332032 A CN201810332032 A CN 201810332032A CN 108681504 A CN108681504 A CN 108681504A
- Authority
- CN
- China
- Prior art keywords
- program code
- software
- test
- functional block
- program
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 226
- 238000011161 development Methods 0.000 claims abstract description 40
- 238000000034 method Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 59
- 230000015654 memory Effects 0.000 claims description 22
- 238000012546 transfer Methods 0.000 abstract description 9
- 238000004364 calculation method Methods 0.000 description 10
- 238000004458 analytical method Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 235000013399 edible fruits Nutrition 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 239000002699 waste material Substances 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/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
技术领域
本发明涉及测试技术领域,尤其涉及一种自动化测试方法、测试服务器及计算机可读存储介质。
背景技术
在软件开发过程中,新功能的增加或者现有版本bug的修复,使得软件版本的更新迭代频率非常高,现有技术中,版本更新迭代之后,对更新迭代后的内容做全面的测试。然而,现有的测试方法中,还只是由测试人员主动将软件的最新版本输入到测试系统,然后选择测试方案进行测试,最后再将测试结果归档到对应的软件版本并反馈到开发人员。因此,版本的更新迭代加快,使得测试的工作繁杂,测试效率低下。即使在应用了自动化测试的领域,版本的更新迭代,应用现有的开发和测试流程,同样会产生这种问题从而浪费了大量的人力物力资源。
发明内容
有鉴于此,本发明提出一种测试服务器,可以能够分析出软件最新版本中修改的代码内容,然后调取对应的测试方案进行测试,并将测试结果以代码分析的形式反馈到开发平台,从而实现开发、测试的无缝对接,提高了测试效率。
首先,为实现上述目的,本发明提出一种测试服务器,所述测试服务器包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的自动化测试程序,所述自动化测试程序被所述处理器执行时实现如下步骤:
接收测试请求;从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码;将所述软件的最新版本程序代码与上一版本程序代码进行比对,查询差异部分程序代码段;根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块;根据所述功能块调取相对应的测试方案对所述软件的最新版本程序代码进行测试。
可选地,在根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤之前,还包括步骤:根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,其中,所述程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段;根据每个功能块预先设定对应的测试方案。
可选地,所述根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤,具体包括:查找所述差异部分程序代码段在所述软件的最新版本程序代码中所属的程序函数;将所述差异部分程序代码段所属的程序函数分别与每个功能块所包含的程序函数进行比较,从而判断出所述差异部分程序代码段所属的功能块。
可选地,所述自动化测试程序被所述处理器执行时还实现如下步骤:记录测试出bug的功能块及该功能块的bug位置对应的程序段,以生成测试报告;将所述测试报告反馈至开发平台。
此外,为实现上述目的,本发明还提供一种自动化测试方法,该方法应用于测试服务器,所述方法包括:
接收测试请求;从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码;将所述软件的最新版本程序代码与上一版本程序代码进行比对,查询差异部分程序代码段;根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块;根据所述功能块调取相对应的测试方案对所述软件的最新版本程序代码进行测试。
可选地,在所述根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤之前,还包括步骤:根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,其中,所述程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段;根据每个功能块预先设定对应的测试方案。
可选地,所述根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤,具体包括:查找所述差异部分程序代码段在所述软件的最新版本程序代码中所属的程序函数;将所述差异部分程序代码段所属的程序函数分别与每个功能块所包含的程序函数进行比较,从而判断出所述差异部分程序代码段所属的功能块。
可选地,所述自动化测试程序被所述处理器执行时还实现如下步骤:记录测试出bug的功能块列举出来及该功能块的bug位置对应的程序段,以生成测试报告;将所述测试报告反馈至开发平台。
可选地,所述测试请求由开发平台发送到所述测试服务器或者由所述测试服务器接收用户输入后触发。
进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有自动化测试程序,所述自动化测试程序可被至少一个处理器执行,以使所述至少一个处理器执行如上述的自动化测试方法的步骤。
相较于现有技术,本发明所提出的自动化测试方法、测试服务器及计算机可读存储介质,可以通过比较软件的最新版本和上一版本程序代码,找出软件最新版本中修改的代码内容,然后调取所述修改的代码内容对应的功能块的测试方案进行测试,并将测试结果以代码分析的形式反馈到开发平台,从而实现开发、测试的无缝对接,提高了测试效率。
附图说明
图1是测试服务器一可选的硬件架构的示意图;
图2是本发明自动化测试程序一实施例的程序模块示意图;
图3是本发明自动化测试方法一实施例的流程示意图。
附图标记:
测试服务器 | 1 |
存储器 | 11 |
处理器 | 12 |
网络接口 | 13 |
自动化测试程序 | 200 |
接收模块 | 201 |
获取模块 | 202 |
查询模块 | 203 |
设定模块 | 204 |
确定模块 | 205 |
调取模块 | 206 |
测试模块 | 207 |
反馈模块 | 208 |
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
参阅图1所示,是测试服务器1一可选的硬件架构的示意图。
所述测试服务器1可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器等计算设备,该测试服务器1可以是独立的服务器,也可以是多个服务器所组成的服务器集群。
本实施例中,所述测试服务器1可包括,但不仅限于,可通过系统总线相互通信连接存储器11、处理器12、网络接口13。
所述测试服务器1通过网络接口13连接网络然后连接到开发平台(图1未标出),或者通过网络接口13直接连接到开发平台,获取或传递包括软件的每个版本的程序代码在内的所有资讯。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi、通话网络等无线或有线网络。
需要指出的是,图1仅示出了具有组件11-13的测试服务器1,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器11可以是所述测试服务器1的内部存储单元,例如该测试服务器1的硬盘或内存。在另一些实施例中,所述存储器11也可以是所述测试服务器1的外部存储设备,例如该测试服务器1配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,所述存储器11还可以既包括所述测试服务器1的内部存储单元也包括其外部存储设备。本实施例中,所述存储器11通常用于存储安装于所述测试服务器1的操作系统和各类应用软件,例如自动化测试程序200的程序代码等。此外,所述存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器12在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制所述测试服务器1的总体操作,例如执行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器12用于运行所述存储器11中存储的程序代码或者处理数据,例如运行所述的自动化测试程序200等。
所述网络接口13可包括无线网络接口或有线网络接口,该网络接口13用于在所述测试服务器1与开发平台或者其他电子装置之间建立通信连接。
本实施例中,当所述测试服务器1接收测试请求后获取并比较与测试请求对应的软件的最新版本和上一版本程序代码,查询软件最新版本中修改的代码内容,确定出所述代码内容所属的功能块,然后调取所述功能块的测试方案进行测试,并将测试结果以代码分析的形式反馈到开发平台,从而实现开发、测试的无缝对接,以提高测试效率。
至此,己经详细介绍了本发明各个实施例的应用环境和相关设备的硬件结构和功能。下面,将基于上述应用环境和相关设备,提出本发明的各个实施例。
首先,本发明提出一种自动化测试程序200。
参阅图2所示,是本发明自动化测试程序200一实施例的程序模块图。
本实施例中,所述自动化测试程序200包括一系列的存储于存储器11上的计算机程序指令,当该计算机程序指令被处理器12执行时,可以实现本发明各实施例的自动化测试操作。在一些实施例中,基于该计算机程序指令各部分所实现的特定的操作,自动化测试程序200可以被划分为一个或多个模块。例如,在图2中,所述自动化测试程序200可以被分割成接收模块201、获取模块202、查询模块203、确定模块205、设定模块204、调取模块206、测试模块207和反馈模块208。其中:
所述接收模块201,用于接收测试请求。所述测试请求可以是由开发平台发送到所述测试服务器或者由所述测试服务器接收用户输入后触发。
具体地,当所述测试服务器1通过有线或无线的方式与开发平台连接时,所述接收模块201可以接收开发人员通过开发平台发送的测试请求。当然,所述接收模块201也可以直接接收由所述测试服务器1的交互界面输入的测试请求。
所述获取模块202,用于从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码。
具体地,开发人员开发出的软件的各个版本都会上传并存储到开发平台。因此,当所述测试服务器1的接收模块201接收到测试请求后,所述获取模块202能够根据测试请求所包含的待测试任务(即待测试的最新版本)从开发平台获取所述测试请求对应的软件的最新版本程序代码,并同时获取所述软件的上一版本程序代码。
所述查询模块203,用于将所述软件的最新版本程序代码与所述上一版本程序代码进行比对,查询差异部分程序代码段。
具体的,当所述获取模块202从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及上一版本程序代码之后,需要找出此次软件更新的内容以便测试。因此,所述查询模块203会将所述最新版本程序代码与所述上一版本程序代码进行比对,找出差异部分程序代码段。
所述设定模块204,根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,以及根据每个功能块预先设定对应的测试方案。
具体的,由于程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段,因此,所述设定模块204可以根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,然后再根据每个功能块预先设定对应的测试方案。
所述确定模块205,用于根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块。
具体的,所述查询模块203找出差异部分程序代码段之后,还会查找所述差异部分程序代码段在所述软件的最新版本程序代码中所属的程序函数。然后,所述确定模块205将所述差异部分程序代码段所属的程序函数分别与所述设定模块204设定的每个功能块包含的程序函数进行比较,从而判断出所述差异部分程序代码段所属的功能块。
所述调取模块206,用于根据所述功能块调取相对应的测试方案。
具体的,当所述确定模块205确定出所述最新版本修改的功能块之后,所述调取模块206会根据所述设定模块204设定的每个功能模块对应的测试方案适应性地调取所述最新版本修改的功能块对应的测试方案以用于测试。
所述测试模块207,用于根据所述功能块调取相对应的测试方案对所述最新版本进行测试。
例如,银行贷款后管系统中包含有利息管理模块、逾期查询模块、贷款归还模块等功能块,而这些功能实际上是对应于贷款后管系统软件中具体的代码内容段。银行贷款后管系统软件中的程序代码,所述设定模块204则会分别设定为不同的功能块,如:利息管理模块、逾期查询模块、贷款归还模块。然后再分别针对各个功能块设定对应的测试方案。
而所述利息管理模块、逾期查询模块和贷款归还模分别对应贷款后管系统软件中的A,B,C代码内容段。其中,A,B,C代码内容段分别为特定的标志,例如实现利息管理模块、逾期查询模块和贷款归还模的A,B,C代码内容分别包含在函数start{A},函数start{B}和函数start{C}中。因此,所述查询模块203在查找出银行贷款后管系统的新版本软件中的差异部分程序代码段之后,还会查找所述差异部分程序代码段在所述最新版本程序代码中所属的程序函数。然后,所述确定模块205将所述差异部分程序代码段所属的程序函数分别与所述设定模块204设定的每个功能块包含的程序函数进行比较,从而确定出所述差异部分程序代码段所属的功能块。
在所述确定模块205确定出最新版本软件中的修改了的功能块后,则会生成该功能块的测试需求,然后所述调取模块206根据该测试需求调用对应的测试方案。比如,贷款后管系统中包含有利息管理模块,当该功能模块的代码内容修改后,则会生成利息管理模块的测试需求,而利息管理模块可能包含多个要素,如利率设置,利息计算公式以及最低还款值,因此利息管理模块对应的测试方案会包括利率设置,利息计算公式以及最低还款值对应的测试方案。因此,当利息管理模块的代码内容修改后,所述调取模块206将会根据利率设置,利息计算公式以及最低还款值等要素调用包相对应的测试方案,然后所述测试模块207根据调取的测试方案对最新版本软件的所述利息管理模块的各个要素功能测试是否正常,然后将各个要素的测试结果则直接汇总为此次测试的所述利息管理模块的测试结果。
所述反馈模块208,用于将所述测试报告反馈至开发平台。
具体的,所述测试模块207根据调取的测试方案对所述最新版本进行测试。然后所述反馈模块208会将所述测试模块207在测试过程中测试出bug的功能块列举出来,以及将该功能块的bug位置对应的程序段列举出来以生成测试报告,然后再将所述测试报告反馈至开发平台。
例如,银行贷款后管系统中包含有利息管理模块,利息管理模块包括要素,利率设置,利息计算公式以及最低还款值。其中利息管理模块,利率设置,利息计算公式以及最低还款值分别对应与软件中的代码内容,如start{A},start{A11},start{A22}和start{A33},当所述测试模块207测试产生的测试结果为最低还款值出现bug时,则会以代码分析的形式生成测试结果为start{A}出现bug,具体为start{A33},更具体为start{A33}中的哪条代码。通过生成这样的代码分析的测试报告,并反馈到开发平台的具体开发人员。
本实施例所提出的自动化测试程序200,运行在所述测试服务器1上,使得所述测试服务器1接收测试请求后获取并比较与测试请求对应的软件的最新版本和上一版本程序代码,查询软件最新版本中修改的代码内容,确定出所述代码内容所属的功能块,然后调取所述功能块的测试方案进行测试,并将测试结果以代码分析的形式反馈到开发平台,从而实现开发、测试的无缝对接,以提高测试效率。
此外,本发明还提出一种自动化测试方法。
参阅图3所示,是本发明自动化测试方法一实施例的流程示意图。在本实施例中,根据不同的需求,图3所示的流程图中的步骤的执行顺序可以改变,某些步骤可以省略。
步骤S500,接收测试请求。所述测试请求可以是由开发平台发送到所述测试服务器或者由所述测试服务器接收用户输入后触发。
具体地,当所述测试服务器1通过有线或无线的方式与开发平台连接时,可以接收开发人员通过开发平台发送的测试请求。当然,也可以直接接收由所述测试服务器1的交互界面输入的测试请求。
步骤S502,从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码。
具体地,开发人员开发出的软件的各个版本都会上传并存储到开发平台。因此,当所述测试服务器1接收到测试请求后,能够根据测试请求所包含的待测试任务(即待测试的最新版本)从开发平台获取所述测试请求对应的软件的最新版本程序代码,并同时获取所述软件的上一版本程序代码。
步骤S504,将所述软件的最新版本程序代码与上一版本程序代码进行比对,查询差异部分程序代码段。
具体的,当从开发平台获取所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码之后,需要找出此次软件更新的内容以便测试。因此,步骤S504会将所述最新版本程序代码与所述上一版本程序代码进行比对,找出差异部分程序代码段。
步骤S506,根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,以及根据每个功能块预先设定对应的测试方案。
具体的,由于程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段,因此,步骤S506根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,然后再根据每个功能块预先设定对应的测试方案。
在其他实施例中,步骤S506可以在步骤S500至步骤S504任一个步骤之前。例如,待测试的对象包含的子单元比较固定的情况下,可以首先执行步骤S506,将待测试的软件设定为至少一个功能块,以及根据每个功能块预先设定对应的测试方案,存储起来。总之,根据实际的情况,步骤S506的执行只需要在步骤S508之前从而不影响后续确定所述软件的最新版本程序代码所修改的功能块的步骤。
步骤S508,根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块。
具体的,当步骤S504查询差异部分程序代码段之后,步骤S504还会查找所述差异部分程序代码段在所述最新版本程序代码中所属的程序函数。然后,步骤S508将所述差异部分程序代码段所属的程序函数分别与步骤S506设定的每个功能块包含的程序函数进行比较,从而确定出所述差异部分程序代码段所属的功能块。
步骤S510,根据所述功能块调取相对应的测试方案,然后根据所述测试方案对所述最新版本进行测试。
具体的,当步骤S508确定出所述最新版本修改的功能块之后,步骤S510则会根据步骤S506设定的每个功能模块对应的测试方案适应性地调取所述最新版本修改的功能块对应的测试方案,然后根据所述测试方案对所述最新版本进行测试。
例如,银行贷款后管系统中包含有利息管理模块、逾期查询模块、贷款归还模块等功能块,而这些功能实际上是对应于贷款后管系统软件中具体的代码内容段。银行贷款后管系统软件中的程序代码,步骤S506则会分别设定为不同的功能块,如:利息管理模块、逾期查询模块、贷款归还模块。然后再分别针对各个功能块设定对应的测试方案。
而所述利息管理模块、逾期查询模块和贷款归还模分别对应贷款后管系统软件中的A,B,C代码内容段。其中,A,B,C代码内容段分别为特定的标志,例如实现利息管理模块、逾期查询模块和贷款归还模的A,B,C代码内容分别包含在函数start{A},函数start{B}和函数start{C}中。因此,步骤S504在查找出银行贷款后管系统的新版本软件中的差异部分程序代码段之后,还会查找所述差异部分程序代码段在所述最新版本程序代码中所属的程序函数。然后,步骤S508则将所述差异部分程序代码段所属的程序函数分别与步骤S506设定的每个功能块包含的程序函数进行比较,从而确定出所述差异部分程序代码段所属的功能块。
在步骤S508确定出最新版本软件中的修改了的功能块后,则会生成该功能块的测试需求,然后步骤S510根据该测试需求调用对应的测试方案对软件的最新版本进行测试。比如,贷款后管系统中包含有利息管理模块,当该功能模块的代码内容修改后,则会生成利息管理模块的测试需求,而利息管理模块可能包含多个要素,如利率设置,利息计算公式以及最低还款值,因此利息管理模块对应的测试方案会包括利率设置,利息计算公式以及最低还款值对应的测试方案。因此,当利息管理模块的代码内容修改后,所述步骤S510将会根据利率设置,利息计算公式以及最低还款值等要素调用包相对应的测试方案,然后步骤S510根据调取的测试方案对最新版本软件的所述利息管理模块的各个要素功能测试是否正常,然后将各个要素的测试结果则直接汇总为此次测试的所述利息管理模块的测试结果。
步骤S512,将所述测试报告反馈至开发平台。
具体的,步骤S510根据调取的测试方案对所述最新版本进行测试。然后步骤S512则会将步骤S510在测试过程中测试出bug的功能块列举出来,以及将该功能块的bug位置对应的程序段列举出来以生成测试报告,然后再将所述测试报告反馈至开发平台。
例如,银行贷款后管系统中包含有利息管理模块,利息管理模块包括要素,利率设置,利息计算公式以及最低还款值。其中利息管理模块,利率设置,利息计算公式以及最低还款值分别对应与软件中的代码内容,如start{A},start{A11},start{A22}和start{A33},当步骤S510测试产生的测试结果为最低还款值出现bug时,步骤S512则会以代码分析的形式生成测试结果为start{A}出现bug,具体为start{A33},更具体为start{A33}中的哪条代码。通过生成这样的代码分析的测试报告,并反馈到开发平台的具体开发人员。
本实施例所提出的自动化测试方法,可以在接收测试请求后获取并比较与测试请求对应的软件的最新版本和上一版本程序代码,查询软件最新版本中修改的代码内容,确定出所述代码内容所属的功能块,然后调取所述功能块的测试方案进行测试,并将测试结果以代码分析的形式反馈到开发平台,从而实现开发、测试的无缝对接,以提高测试效率。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种自动化测试方法,应用于测试服务器,其特征在于,所述测试服务器与开发平台连接,所述方法包括步骤:
接收测试请求;
从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码;
将所述软件的最新版本程序代码与上一版本程序代码进行比对,查询差异部分程序代码段;
根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块;
根据所述功能块调取相对应的测试方案对所述软件的最新版本程序代码进行测试。
2.如权利要求1所述的自动化测试方法,其特征在于,在根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤之前,还包括步骤:
根据所述软件的程序代码中的程序函数将所述软件设定为至少一个功能块,其中,所述程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段;
根据每个功能块预先设定对应的测试方案。
3.如权利要求2所述的自动化测试方法,其特征在于,所述根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤,具体包括:
查找所述差异部分程序代码段在所述软件的最新版本程序代码中所属的程序函数;
将所述差异部分程序代码段所属的程序函数分别与每个功能块所包含的程序函数进行比较,从而判断出所述差异部分程序代码段所属的功能块。
4.如权利要求1-3任一项所述的自动化测试方法,其特征在于,所述方法还包括步骤:
记录测试出bug的功能块及该功能块的bug位置所对应的程序段,以生成测试报告;
将所述测试报告反馈至开发平台。
5.如权利要求4所述的自动化测试方法,其特征在于,所述测试请求由开发平台发送到所述测试服务器或者由所述测试服务器接收用户输入后触发。
6.一种测试服务器,其特征在于,所述测试服务器包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的自动化测试程序,所述自动化测试程序被所述处理器执行时实现如下步骤:
接收测试请求;
从开发平台获取与所述测试请求对应的软件的最新版本程序代码以及所述软件的上一版本程序代码;
将所述软件的最新版本程序代码与上一版本程序代码进行比对,查询差异部分程序代码段;
根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块;
根据所述功能块调取相对应的测试方案对所述软件的最新版本程序代码进行测试。
7.如权利要求6所述的测试服务器,其特征在于,在根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤之前,还包括步骤:
根据所述软件的程序代码中的程序函数预先将所述软件设定为至少一个功能块,其中,所述程序函数为具有固定起始格式和结束格式,并实现特定功能的程序代码段;
根据每个功能块预先设定对应的测试方案。
8.如权利要求7所述的测试服务器,其特征在于,所述根据所述差异部分程序代码段确定所述软件的最新版本程序代码所修改的功能块的步骤,具体包括:
查找所述差异部分程序代码段在所述软件的最新版本程序代码中所属的程序函数;
将所述差异部分程序代码段所属的程序函数分别与每个功能块所包含的程序函数进行比较,从而判断出所述差异部分程序代码段所属的功能块。
9.如权利要求6-8中任一项所述的测试服务器,其特征在于,所述自动化测试程序被所述处理器执行时还实现如下步骤:
记录测试出bug的功能块及该功能块的bug位置所对应的程序段,以生成测试报告;
将所述测试报告反馈至开发平台。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有自动化测试程序,所述自动化测试程序可被至少一个处理器执行,以使所述至少一个处理器执行如权利要求1-5中任一项所述的自动化测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810332032.XA CN108681504A (zh) | 2018-04-13 | 2018-04-13 | 自动化测试方法、测试服务器及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810332032.XA CN108681504A (zh) | 2018-04-13 | 2018-04-13 | 自动化测试方法、测试服务器及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108681504A true CN108681504A (zh) | 2018-10-19 |
Family
ID=63799504
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810332032.XA Pending CN108681504A (zh) | 2018-04-13 | 2018-04-13 | 自动化测试方法、测试服务器及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108681504A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992283A (zh) * | 2019-03-26 | 2019-07-09 | 合肥移瑞通信技术有限公司 | 一种批量同步下载升级测试固件的方法及系统 |
CN110109840A (zh) * | 2019-05-10 | 2019-08-09 | 重庆八戒电子商务有限公司 | 基于版本号比较的代码审计方法、审计装置及介质 |
CN110597717A (zh) * | 2019-08-29 | 2019-12-20 | 凡普数字技术有限公司 | 代码测试方法、装置以及存储介质 |
CN110688315A (zh) * | 2019-09-26 | 2020-01-14 | 招商局金融科技有限公司 | 接口代码检测报告生成方法、电子装置及存储介质 |
CN112965868A (zh) * | 2021-04-07 | 2021-06-15 | 深圳市达实智控科技股份有限公司 | 游戏控制器的自动化测试方法、装置及可读介质 |
CN113448862A (zh) * | 2021-07-12 | 2021-09-28 | 上海哔哩哔哩科技有限公司 | 软件版本测试方法、装置及计算机设备 |
CN113760911A (zh) * | 2021-09-01 | 2021-12-07 | 上海哔哩哔哩科技有限公司 | 索引差异测试方法及系统 |
TWI769896B (zh) * | 2021-07-23 | 2022-07-01 | 鼎新電腦股份有限公司 | 破壞性程式功能驗證方法及其系統 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103198010A (zh) * | 2012-01-06 | 2013-07-10 | 腾讯科技(深圳)有限公司 | 软件测试方法、装置及系统 |
CN104424088A (zh) * | 2013-08-21 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 软件的测试方法及装置 |
CN105302710A (zh) * | 2014-07-03 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 一种确定需要回归测试的测试用例的方法和装置 |
CN106776339A (zh) * | 2016-12-30 | 2017-05-31 | 上海亿账通互联网科技有限公司 | 自动化测试方法及装置 |
-
2018
- 2018-04-13 CN CN201810332032.XA patent/CN108681504A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103198010A (zh) * | 2012-01-06 | 2013-07-10 | 腾讯科技(深圳)有限公司 | 软件测试方法、装置及系统 |
CN104424088A (zh) * | 2013-08-21 | 2015-03-18 | 腾讯科技(深圳)有限公司 | 软件的测试方法及装置 |
CN105302710A (zh) * | 2014-07-03 | 2016-02-03 | 腾讯科技(深圳)有限公司 | 一种确定需要回归测试的测试用例的方法和装置 |
CN106776339A (zh) * | 2016-12-30 | 2017-05-31 | 上海亿账通互联网科技有限公司 | 自动化测试方法及装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109992283A (zh) * | 2019-03-26 | 2019-07-09 | 合肥移瑞通信技术有限公司 | 一种批量同步下载升级测试固件的方法及系统 |
CN109992283B (zh) * | 2019-03-26 | 2023-03-14 | 合肥移瑞通信技术有限公司 | 一种批量同步下载升级测试固件的方法及系统 |
CN110109840A (zh) * | 2019-05-10 | 2019-08-09 | 重庆八戒电子商务有限公司 | 基于版本号比较的代码审计方法、审计装置及介质 |
CN110597717A (zh) * | 2019-08-29 | 2019-12-20 | 凡普数字技术有限公司 | 代码测试方法、装置以及存储介质 |
CN110688315A (zh) * | 2019-09-26 | 2020-01-14 | 招商局金融科技有限公司 | 接口代码检测报告生成方法、电子装置及存储介质 |
CN112965868A (zh) * | 2021-04-07 | 2021-06-15 | 深圳市达实智控科技股份有限公司 | 游戏控制器的自动化测试方法、装置及可读介质 |
CN113448862A (zh) * | 2021-07-12 | 2021-09-28 | 上海哔哩哔哩科技有限公司 | 软件版本测试方法、装置及计算机设备 |
CN113448862B (zh) * | 2021-07-12 | 2022-08-02 | 上海哔哩哔哩科技有限公司 | 软件版本测试方法、装置及计算机设备 |
TWI769896B (zh) * | 2021-07-23 | 2022-07-01 | 鼎新電腦股份有限公司 | 破壞性程式功能驗證方法及其系統 |
CN113760911A (zh) * | 2021-09-01 | 2021-12-07 | 上海哔哩哔哩科技有限公司 | 索引差异测试方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108681504A (zh) | 自动化测试方法、测试服务器及计算机可读存储介质 | |
CN110708210B (zh) | 云测试配置方法、装置、计算机设备及存储介质 | |
CN104838405B (zh) | 用于应用程序的测试框架的方法和系统 | |
CN108055264A (zh) | 推流服务器的调度装置、方法及计算机可读存储介质 | |
CN109474578A (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN107885656A (zh) | 产品算法自动化测试方法及应用服务器 | |
CN108492005B (zh) | 项目数据处理方法、装置、计算机设备和存储介质 | |
CN107689982A (zh) | 多数据源数据同步方法、应用服务器及计算机可读存储介质 | |
CN107807967B (zh) | 实时推荐方法、电子设备及计算机可读存储介质 | |
CN110347545A (zh) | 一种业务平台缓存策略的测试方法及装置 | |
CN110928802A (zh) | 基于自动生成用例的测试方法、装置、设备及存储介质 | |
CN109032912A (zh) | 车载终端固件升级的压力测试方法 | |
CN113448862B (zh) | 软件版本测试方法、装置及计算机设备 | |
CN113360250B (zh) | 一种应用服务资源控制方法、装置、设备及介质 | |
CN110689228A (zh) | 试验业务排程方法、装置、计算机设备和存储介质 | |
CN108021621A (zh) | 数据库数据采集方法、应用服务器及计算机可读存储介质 | |
CN107992424A (zh) | 自动化测试分析方法、应用服务器及计算机可读存储介质 | |
CN108427635A (zh) | 快速测试web页面的方法、服务器及计算机可读存储介质 | |
CN109446515A (zh) | 群组信息分析方法、电子装置及计算机可读存储介质 | |
CN107357721B (zh) | 测试系统的方法及装置 | |
CN108776631A (zh) | 服务器、获取兼容性测试设备的方法及存储介质 | |
CN110109684A (zh) | 区块链节点管理代理服务安装方法、电子装置及存储介质 | |
CN105511914A (zh) | 应用更新方法、装置和系统 | |
CN108829574B (zh) | 测试数据铺设方法、测试服务器及计算机可读存储介质 | |
CN108428097A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20181019 |
|
WD01 | Invention patent application deemed withdrawn after publication |