CN107885658B - 测试前置实现方法、装置、终端设备及存储介质 - Google Patents
测试前置实现方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN107885658B CN107885658B CN201711040815.2A CN201711040815A CN107885658B CN 107885658 B CN107885658 B CN 107885658B CN 201711040815 A CN201711040815 A CN 201711040815A CN 107885658 B CN107885658 B CN 107885658B
- Authority
- CN
- China
- Prior art keywords
- test
- tested
- system platform
- code
- preposition
- 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
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
-
- 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/3696—Methods or tools to render software testable
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)
- Stored Programmes (AREA)
Abstract
本发明公开了一种测试前置实现方法、装置、终端设备及存储介质。该测试前置实现方法,包括:将系统平台和至少一个测试环境子系统相连通;创建编译部署脚本;运行所述编译部署脚本,获取能够在所述系统平台上运行的可执行包;将所述可执行包部署在所述系统平台上,并基于与所述系统平台相连通的至少一个所述测试环境子系统,实现测试前置。该测试前置实现方法能够实现测试前置中相关联子系统之间进行联测的目的和实现测试效率高的效果。
Description
技术领域
本发明涉及软件测试领域,尤其涉及一种测试前置实现方法、装置、终端设备及存储介质。
背景技术
当前银行、证券和保险等金融机构或者其他机构在生产经营过程中,需开发与机构经营范围相关的系统,且任一系统与至少一个相关联子系统相连。如保险机构需开发与保险相关的电话销售系统,该电话销售系统可能与机构内部的办公系统、售后服务系统等相关联子系统相连。当前系统开发测试过程中,需实现测试前置,以保证系统能够正常运行。其中,测试前置是指在测试之前需实现的准备工作,主要包括配置测试环境条件和测试数据条件等准备工作。当前测试前置难以实现对系统平台与相关联子系统进行联合测试(以下简称为“联测”),而系统平台中部分主流程又依赖于相关联子系统,因此无法有效地做到测试前置,使得测试效果不好。此外,当前测试前置过程需准备待测试代码等测试数据,在测试前置时需由开发人员将待测试代码提交到版本管理工具后,再由移交人员将提交版本管理工具的待测试代码代码移交到部署平台,由部署人员进行打包并部署到对应的测试环境服务器上,以完成移交数据流程。这种移交数据流程中需要部署的待测试代码又非常多,部署人员有限,人工部署过程需耗费大量的人工成本和时间成本,导致测试效率较低。
发明内容
本发明实施例提供一种测试前置实现方法、装置、终端设备及存储介质,以解决测试前置中相关联子系统难以进行联测的问题。
第一方面,本发明实施例提供一种测试前置实现方法,包括:
将系统平台和至少一个测试环境子系统相连通;
创建编译部署脚本;
运行所述编译部署脚本,获取能够在所述系统平台上运行的可执行包;
将所述可执行包部署在所述系统平台上,并基于与所述系统平台相连通的至少一个所述测试环境子系统,实现测试前置。
第二方面,本发明实施例提供一种测试前置实现装置,包括:
测试环境连通模块,用于将系统平台和至少一个测试环境子系统相连通;
编译部署脚本创建模块,用于创建编译部署脚本;
可执行包获取模块,用于运行所述编译部署脚本,获取能够在所述系统平台上运行的可执行包;
部署模块,用于将所述可执行包部署在所述系统平台上,并基于与所述系统平台相连通的至少一个所述测试环境子系统,实现测试前置。
第三方面,本发明实施例提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述测试前置实现方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现所述测试前置实现方法的步骤。
本发明实施例提供的测试前置实现方法、装置、终端设备及存储介质中,首先将系统平台和至少一个测试环境子系统相连通,将原本只能进行独立系统测试的测试环境子系统关联起来,实现测试环境子系统相互之间的连通,通过该测试前置环境能够对相关联的测试环境子系统之间实现联测,实现更有效的测试。接着创建编译部署脚本,通过创建编译部署脚本能够简化移交待测试代码的流程,有利于提高待测试代码移交的效率。然后运行编译部署脚本,获取能够在系统平台上运行的可执行包,通过编译部署脚本获取可执行包使得获取测试所需的数据更加方便快捷。最后将可执行包部署在系统平台上,并基于与系统平台相连通的至少一个测试环境子系统,实现测试前置。其中,与系统平台相连通的至少一个测试环境子系统实现了测试前置的测试环境条件,能够在系统平台上运行的可执行包实现了测试前置的测试数据条件,为进行测试之前做好了测试环境和测试数据方面的准备,实现测试环境子系统联测的目的,达到提高测试效率高的效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例1中测试前置实现方法的一流程图。
图2是图1中步骤S10之后的一具体流程图。
图3是图1中步骤S20的一具体流程图。
图4是图1中步骤S30的一具体流程图。
图5是图4中步骤S31的一具体流程图。
图6是本发明实施例2中测试前置实现装置的一原理框图。
图7是本发明实施例4中终端设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
图1示出本实施例中测试前置实现方法的流程图。该测试前置实现方法应用在银行、证券和保险等金融机构配置的终端设备中,用于实现金融机构系统测试的测试前置,可基于系统平台实现测试环境子系统之间的联测,并使得测试数据移交流程更简便,以提高测试效率。其中,该终端设备是可与用户进行人机交互的设备,包括但不限于电脑、智能手机和平板等设备。如图1所示,该测试前置实现方法包括如下步骤:
S10:将系统平台和至少一个测试环境子系统相连通。
其中,系统平台是指用于创建测试应用环境的平台。测试应用环境可以理解为待测试代码所需的运行环境,例如当测试一个程序能否在一操作系统中运行,则其测试应用环境为该操作系统;当测试一个程序能否支持多个浏览器运行时,则其测试应用环境为安装有多个浏览器的操作系统。测试环境子系统是相对于一个由多个测试环境子系统组成的测试环境系统而言的,是测试环境系统中具有某一特定功能并且能独立运行的系统。具体地,系统平台安装在终端设备上,可以通过http、T3等网络协议将系统平台与至少一个测试环境子系统连通起来。
本实施例中,测试环境系统可以为财产保险系统,其包含的测试环境子系统可以为财产保险保单系统、财产保险配送管理系统和财产保险理赔系统等测试环境子系统。其中,子系统是一个相对的概念,子系统中也可以有下一级的子系统,如财产保险理赔系统还可以包括车险理赔系统、房险理赔系统等子系统,每一测试环境子系统具有其特定功能。在财产保险保单系统中增加、修改或删除保单信息时,对应的财产保险配送管理系统、财产保险理赔系统等测试环境子系统中的相关联信息也将会一并修改,其原因在于这些系统并不是独立的,而是存在一定关联关系的。在对待测试代码进行测试时,往往不是对整个测试环境系统直接进行测试,而是对某一具体的待测试代码,在与该待测试代码相关的至少一个测试环境子系统中进行测试,检验测试结果是否符合预期对各个测试环境子系统的影响,使得测试更具备目的性,能够有效测试待测试代码对相关联测试环境子系统的影响,并且具有测试效率高的效果。
本实施例中,该系统平台可以是一种分布式系统平台。该分布式系统平台采用的可以是Mesos+Marathon框架,能够完成应用程序的快速创建、运行、快速缩容、快速扩容以及故障自愈的功能。该分布式系统平台采用独立IP,可以实现任何集群与外部的IP或者传统的IP进行通讯。其中,独立IP是指虚拟主机有一个单独的IP地址,用户除了可以根据域名进行访问的方式外,在浏览器的地址栏输入IP地址也能访问该IP地址对应的网站;如果没有独立IP的话,访问该网站只能通过输入域名才能进行访问。独立IP可以实现一个站点对应一个单独的IP地址,且同一台服务器不受其他用户影响,具有防攻击、安全性高和搜索引擎收录快的优点。该分布式系统平台负载均衡的方式很多,可以根据容器的动态变化(即容器的增删)做动态调整;该分布式系统平台内还有独立的域名解析,可以做到配置管理数据库和性能监控的动态更新。用户通过分布式系统平台进行测试前置的环境配置时,在分布式系统平台上通过配置与测试环境子系统之间的连通(具体方式如通过http、T3等网络协议将系统平台与测试环境子系统连通起来),实现系统平台和至少一个测试环境子系统相连通,使得测试环境子系统之间通过系统平台连通不存在防火墙问题,在系统平台上搭建的测试应用环境和测试环境子系统之间无需另外申请开通防火墙的操作。通过分布式系统平台创建测试应用环境,将原本只能进行独立系统测试的测试环境子系统关联起来,实现测试环境子系统相互之间的连通,能够对待测试代码实现更有效的测试。
需要特别指出的是,系统平台和至少一个测试环境子系统相连通,可实现联测和单独测试。联测是针对至少两个测试环境子系统而言的。而只有一个测试环境子系统相当于只进行该系统平台对待测试代码的单独测试,同样能够实现测试环境子系统单独测试情况下的测试前置环境条件,即在系统平台上可以进行测试环境子系统之间的联测也可以实现对测试环境子系统的单独测试。
在一具体实施方式中,如图2所示,步骤S10中,将系统平台和至少一个测试环境子系统相连通,之后还包括如下步骤:
S11:采用网络协议命令检验系统平台和测试环境子系统是否连通。
其中,网络协议命令是指计算机网络中为了进行数据交换而建立的规则、标准或约定的集合所采用的指令操作。例如,网络中一个微机用户和一个大型主机的操作员进行通信,由于这两个终端所用字符集不同,因此操作员所输入的命令彼此不认识。为了使两个终端能够进行通信,需根据对应的网络协议采用指令操作规定每个终端都要将各自字符集中的字符先变换为标准字符集的字符后,才进入网络传送,使其到达对方终端后可变换为该终端字符集的字符。
本实施例中,采用的网络协议命令可以是telnet命令或其他网络协议命令,根据该网络协议命令可以检验系统平台和测试环境子系统是否连通。可以理解地,步骤S10中将系统平台和至少一个测试环境子系统相连通,该连通并非一定能成功,需通过网络协议命令对其进行检验,从而确认系统平台和测试环境子系统间的连通关系,将具有关联关系的测试环境子系统通过系统平台连通,实现测试环境的前置。测试环境子系统之间通过系统平台连通不存在防火墙问题,使得在系统平台上搭建的测试应用环境和测试环境子系统之间无需另外申请开通防火墙的操作,有利于实现系统平台与测试环境子系统之间的联测。
S12:若未连通,则输出未连通提醒信息,重新将系统平台和测试环境子系统相连通。
本实施例中,若通过网络协议命令检验系统平台和测试环境子系统的连通结果为不连通,则在系统平台上输出未连通提醒信息。用户根据系统平台反馈的未连通提醒信息,重新连通系统平台和测试环境子系统,根据测试所需的环境进行配置,在系统平台上重新导入测试所需的测试环境子系统,实现系统平台和至少一个测试环境子系统相连通。在重新导入完成之后,需重复步骤S11,检验系统平台和测试环境子系统之间的连通,直至确认连通结果,以实现测试前置的环境配置。
S20:创建编译部署脚本。
其中,脚本是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。脚本通常可以由应用程序临时调用并执行。脚本是批处理文件的延伸,是一种纯文本保存的程序,一般来说,脚本是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。脚本相对一般程序开发来说比较接近自然语言,可以不经编译而是解释执行,利于快速开发或一些轻量的控制。
本实施例中,编译部署脚本具体是指根据特定的需求设计出的能够实现数据获取和数据部署功能的脚本。通过创建该编译部署脚本,可以及时地获取开发人员上传的待测试代码,并基于获取到的待测试代码,将待测试代码编译和打包成可执行包,并在系统平台上进行部署该可执行包,为实现测试前置的数据条件配置提供便捷的待测试代码获取方式,即可有效提高数据获取和数据部署的效率。
在一具体实施方式中,如图3所示,步骤S20中,创建编译部署脚本,具体包括如下步骤:
S21:脚本创建工具获取用户输入的脚本指令,脚本指令与待测试代码相关联。
其中,脚本创建工具是指用于创建编译部署脚本的工具。脚本指令是指用户在脚本创建工具中进行开发而输入的具体代码指令,是执行某一具体操作的指令,这些脚本指令的集合即为编译部署脚本。脚本创建工具包括但不限于本实施例中的Jenkins。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,具有持续的软件版本发布/测试项目和监控外部调用执行工作的功能。采用Jenkins创建编译部署脚本,通过获取用户输入的脚本指令,以便基于该脚本指令对待测试代码进行编译,以快速获取测试所需的待测试代码,并且不依赖现有缓慢的数据移交部署流程。
待测试代码是指需在系统平台和与其连通的至少一个测试环境子系统进行测试的代码。该代码可以是整个应用程序的代码,也可以是整个应用程序部分功能模块的代码。
本实施例中,脚本创建工具Jenkins安装在终端设备上,该终端设备可以与安装系统平台的终端设备为同一设备,也可以与安装系统平台的终端设备不为同一设备但两个终端设备可通信相连。用户在脚本创建工具Jenkins创建编译部署脚本时,获取用户输入的脚本指令,该脚本指令是针对待测试代码而言的,即该脚本指令在Jenkins中是与要获取的待测试代码相关联的具体代码指令。
具体地,如待测试代码为财产保险理赔系统中车险理赔模块的代码,则该脚本指令应与获取该车险理赔模块的代码相关联,而不应该与财产保险理赔系统中其他模块如房险理赔模块的代码相关联。通过脚本指令与待测试代码相关联,可以灵活地获取待测试代码,只需根据待测试代码进行脚本指令的修改,即可将脚本指令与待测试代码相关联,达到快速获取待测试代码的目的。
S22:基于与待测试代码相关联的脚本指令,创建编译部署脚本。
本实施例中,编译部署脚本是通过用户在脚本创建工具输入的脚本指令进行创建的,并与待测试代码相关联的脚本。在实际进行测试过程中,根据所需获取的待测试代码,用户输入与待测试代码相关联的脚本指令创建编译部署脚本。
S30:运行编译部署脚本,获取能够在系统平台上运行的可执行包。
其中,可执行包是指能够在系统平台上运行的可执行文件。该可执行包可以是EAR包、JAR包等可执行包,是一种与平台无关的文件格式,可将多个文件合成一个文件。用户可将多个Java applet及其所需组件(.class文件、图像和声音等)绑定到可执行包中,而后作为单个简单的HTTP(Hypertext Transfer Protocol,超文本传输协议)事务下载到浏览器中,从而大大提高下载速度。本实施例中,运行编译部署脚本,通过该编译部署脚本获取用于在系统平台运行的可执行包,其中,该可执行包包含了待测试代码的内容。可以理解地,通过运行编译部署脚本,将待测试代码转换为能够在系统平台运行的可执行包形式,实现了对待测试代码的有效测试。
在一具体实施方式中,如图4所示,步骤S30中,运行编译部署脚本,获取能够在系统平台上运行的可执行包,具体包括如下步骤:
S31:在系统平台上运行编译部署脚本,以从版本管理工具获取待测试代码。
其中,版本管理工具是用于对系统版本和系统源代码进行管理的工具。本实施例中,版本管理工具可以是SVN(Subversion)平台,SVN平台能实现多个人共同开发同一个项目,共用资源的目的。SVN平台作为开源软件的代码库,开发人员将开发完成的待测试代码存储在SVN平台上,并使该待测试代码的待测试代码ID与存储地址关联。可以理解地,SVN平台与编译部署脚本所在的终端设备通信相连,以使终端设备可在运行编译部署脚本时,能够从SVN平台上获取可在系统平台上运行的可执行包。开发人员在开发系统的过程中,将待测试代码上传到版本管理工具后,测试人员随即在终端设备运行创建的编译部署脚本,根据测试人员编写的与待测试代码相关联的编译部署脚本的脚本指令,获取保存在版本管理工具的待测试代码。
具体地,若需对开发人员新开发的一项新功能进行测试,则开发人员会将新功能开发的待测试代码上传到版本管理工具中,测试人员随后运行与该待测试代码相关联的编译部署脚本,查找版本管理工具中与待测试新功能对应的待测试代码。
S32:对待测试代码进行编译和打包,获取能够在系统平台上运行的可执行包。
未进行编译和打包的待测试代码是不能在系统平台上运行并测试的,因此,本实施例中需采用编译部署脚本将获取的待测试代码进行编译和打包,转换成能可执行包,获取能够在系统平台上运行的可执行包。
在一具体实施方式中,如图5所示,步骤S31中,在系统平台上运行编译部署脚本,以从版本管理工具获取待测试代码,具体包括如下步骤:
S311:运行编译部署脚本,获取与待测试代码ID相关联的存储地址。
其中,待测试代码ID是指用于唯一识别待测试代码的标识。每一待测试代码代表各自一模块的功能,待测试代码ID就是用于唯一区分这些功能模块的标识。
本实施例中,运行已创建好的编译部署脚本,该编译部署脚本中的脚本指令是与待测试代码相关联的,则运行编译部署脚本可以理解为执行与待测试代码相关联的脚本指令,该脚本指令为编译部署脚本中具有某一具体操作的指令。在执行脚本指令的过程中,其中有一指令是获取与待测试代码相关联的存储地址的指令。运行编译部署脚本,获取与待测试代码ID相关联的存储地址,可以实现运用编译部署脚本自动、灵活和快速地获取待测试代码,而不必依赖于传统的人工获取方式,提高了获取待测试代码的效率。
S312:根据存储地址获取待测试代码。
待测试代码的待测试代码ID是与存储地址相关联的,则通过该存储地址就可以获取存储在内存中的待测试代码。本实施例中,待测试代码代表是指进行测试的某一功能模块的代码,该待测试代码ID与该待测试代码的存储地址相关联。例如财产保险理赔系统中刚刚新增了车险理赔模块的待测试代码,则将该车险理赔模块的待测试代码ID与其存储地址相关联,而不与其他待测试代码代表的功能模块相关联。具体地,通过运行编译部署脚本获取的存储地址,为待测试代码在内存中具体的存储地址,则编译部署脚本将根据存储地址自动获取对应内存中存储的待测试代码。
S40:将可执行包部署在系统平台上,并基于与系统平台相连通的至少一个测试环境子系统,实现测试前置。
其中,测试前置是指完成对待测试代码之前所需的预备工作,该预备工作包括测试前置环境条件和测试前置数据条件。本实施例中,对系统平台进行部署,即在系统平台上实现测试环境子系统与系统平台的连通之后,在系统平台上实现测试前置数据条件的部署,即将可执行包在系统平台上部署,具体地,在通过编译部署脚本获取待测试代码编译打包而成的可执行包后,编译部署脚本将会部署该可执行包到系统平台中去。部署可执行包的过程就是将原本在版本管理工具中的待测试代码编译和打包成可执行包,并安装转移到在系统平台上的过程。通过在系统平台上部署可执行包,可以实现将待测试代码部署到一个能够实现测试环境子系统联测的系统平台上去。各个测试环境子系统在系统平台上连通不存在防火墙问题,无需另外开通防火墙的操作,使得测试的效率更高,并且实现测试环境子系统之间的联测。通过部署可执行包完成测试前置环境条件和测试前置数据条件,以实现测试前置。
在一具体实施方式中,步骤S40中,将可执行包部署在所述系统平台上,包括:将可执行包与系统平台的域名和端口号相关联。
其中,域名(Domain Name),是由一串用点分隔的名字组成的因特网上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置,地理上的域名,指代有行政自主权的一个地方区域)。域名是便于记忆和沟通的一组服务器的地址(如网站,电子邮件等)。端口号是指TCP/IP协议(Transmission Control Protocol/Internet Protocol,中译名为传输控制协议/因特网互联协议)中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于文件传输协议服务的21端口等等。
本实施例中,在获取可执行包之后应将可执行包与系统平台的域名和端口号相关联,以使在进行关联子系统联测时可以进行测试。具体地,当在实现至少两个测试环境子系统联测时,在系统平台上选择至少两个测试环境子系统,将其域名和端口号与选择要测试的可执行包关联,以使至少两个测试环境子系统可同时运行该可执行包,对该可执行包进行测试,并向系统平台反馈测试结果,从而实现基于系统平台实现至少两个测试环境子系统的联测。
在一具体实施方式中,步骤S40中,将所述可执行包部署在所述系统平台上,之后还包括:重启所述系统平台的服务器,更新部署在所述系统平台上的所述可执行包。
本实施例中,通过系统平台部署可执行包后,可以通过重启系统平台的服务器,更新获取可执行包列表。并在更新之后,可执行包列表将会显示重新获取的所有可执行包的信息。当重启系统平台后显示的可执行包列表中有刚刚部署的可执行包,则表示部署真正地完成。更新了部署在系统平台上的可执行包,即完成了测试前置数据条件,结合至少一个测试环境子系统与系统平台相连通完成的测试前置环境条件,实现了测试前置。
本实施例所提供的测试前置实现方法中,首先将系统平台和至少一个测试环境子系统相连通,通过系统平台创建测试应用环境,将原本只能进行独立系统测试的测试环境子系统关联起来,实现测试环境子系统相互之间的连通,通过该系统平台创建的测试应用环境能够对相关联的测试环境子系统之间实现联测,实现测试前置的测试前置环境条件。接着创建编译部署脚本,并基于编译部署脚本获取能够在系统平台上运行的可执行包,从而简化移交待测试代码的流程,有利于高效地获取存储在版本管理工具的待测试代码,而无需依赖于繁琐的传统移交待测试代码流程。然后运行编译部署脚本,编译部署脚本能够自动地对待测试代码进行获取、编译、打包和部署的操作。编译部署脚本获取能够在系统平台上运行的可执行包,将获取的存储在版本管理工具的待测试代码编译并打包成可在系统平台上运行的可执行包,能够快速获取测试前置数据即与测试代码相关的可执行包。最后将可执行包部署在系统平台上,并基于与系统平台相连通的至少一个测试环境子系统,实现测试前置。其中,与系统平台相连通的至少一个测试环境子系统实现了测试前置的测试前置环境条件,能够在系统平台上运行测试的可执行包实现了测试前置的测试前置数据条件,为进行测试之前做好了测试前置环境和测试前置数据方面的准备,实现了测试环境子系统联测的目的、数据移交流程简便和测试效率高的效果。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
实施例2
图6示出与实施例1中测试前置实现方法一一对应的测试前置实现装置的原理框图。如图6所示,该测试前置实现装置包括测试环境连通模块10、编译部署脚本创建模块20、可执行包获取模块30和部署模块40。其中,测试环境连通模块10、编译部署脚本创建模块20、可执行包获取模块30和部署模块40的实现功能与实施例中测试前置实现方法对应的步骤一一对应,为避免赘述,本实施例不一一详述。
测试环境连通模块10,用于将系统平台和至少一个测试环境子系统相连通。
编译部署脚本创建模块20,用于创建编译部署脚本。
可执行包获取模块30,用于运行编译部署脚本,获取能够在系统平台上运行的可执行包。
部署模块40,用于将可执行包部署在系统平台上,并基于与系统平台相连通的至少一个测试环境子系统,实现测试前置。
优选地,编译部署脚本创建模块20包括脚本指令获取单元21和指令创建单元22。
脚本指令获取单元21,用于脚本创建工具获取用户输入的脚本指令,脚本指令与待测试代码相关联。
指令创建单元22,用于基于与待测试代码相关联的脚本指令,创建编译部署脚本。
优选地,可执行包获取模块30包括测试代码获取单元31和编译打包单元32。
测试代码获取单元31,用于在系统平台上运行编译部署脚本,以从版本管理工具获取待测试代码。
编译打包单元32,用于对待测试代码进行编译和打包,获取能够在系统平台上运行的可执行包。
优选地,待测试代码获取单元31包括存储地址获取子单元311和寻址子单元312。
存储地址获取子单元311,用于运行编译部署脚本,获取与待测试代码ID相关联的存储地址。
寻址子单元312,用于根据存储地址获取待测试代码。
实施例3
本实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现实施例1中测试前置实现方法,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现实施例2中测试前置实现中各模块/单元的功能,为避免重复,这里不再赘述。
实施例4
图7是本实施例中终端设备的示意图。如图7所示,终端设70包括处理器71、存储器72以及存储在存储器72中并可在处理器71上运行的计算机程序73。处理器71执行计算机程序73时实现实施例1中测试前置实现方法的各个步骤,例如图1所示的步骤S10、S20、S30和S40。或者,处理器71执行计算机程序73时实现实施例2中测试前置实现装置各模块/单元的功能,如图6所示测试环境连通模块10、编译部署脚本创建模块20、可执行包获取模块30和部署模块40的功能。
示例性的,计算机程序73可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器72中,并由处理器71执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序73在终端设备70中的执行过程。例如,计算机程序70可被分割成实施例2中的测试环境连通模块10、编译部署脚本创建模块20、可执行包获取模块30和部署模块40,各模块的具体功能如实施例2所示,为避免重复,此处不一一赘述。
终端设备70可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器71、存储器72。本领域技术人员可以理解,图7仅仅是终端设备70的示例,并不构成对终端设备70的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器71可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器72可以是终端设备70的内部存储单元,例如终端设备70的硬盘或内存。存储器72也可以是终端设备70的外部存储设备,例如终端设备70上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器72还可以既包括终端设备70的内部存储单元也包括外部存储设备。存储器72用于存储计算机程序以及终端设备所需的其他程序和数据。存储器72还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机待测试代码,所述计算机待测试代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机待测试代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (9)
1.一种测试前置实现方法,其特征在于,包括:
将系统平台和至少两个测试环境子系统相连通,至少两个所述测试环境子系统之间具有关联关系;
创建编译部署脚本;
运行所述编译部署脚本获取待测试代码,将所述待测试代码进行编译和打包,获取能够在所述系统平台上运行的可执行包,所述待测试代码是指需在系统平台和与所述系统平台连通的至少两个测试环境子系统进行测试的代码;
将所述可执行包部署在所述系统平台上,将所述可执行包与所述系统平台的域名和端口号关联,并将所述可执行包与所述系统平台相连通的至少两个所述测试环境子系统的域名和端口号关联,实现测试前置。
2.根据权利要求1所述的测试前置实现方法,其特征在于,所述将系统平台和至少两个测试环境子系统相连通,之后还包括:
采用网络协议命令检验所述系统平台和所述测试环境子系统是否连通;
若未连通,则输出未连通提醒信息,重新将所述系统平台和所述测试环境子系统相连通。
3.根据权利要求1所述的测试前置实现方法,其特征在于,所述创建编译部署脚本,包括:
脚本创建工具获取用户输入的脚本指令,所述脚本指令与待测试代码相关联;
基于与所述待测试代码相关联的所述脚本指令,创建编译部署脚本。
4.根据权利要求1所述的测试前置实现方法,其特征在于,所述运行所述编译部署脚本,获取能够在所述系统平台上运行的可执行包,包括:
在所述系统平台上运行所述编译部署脚本,以从版本管理工具获取所述待测试代码;
对所述待测试代码进行编译和打包,获取能够在所述系统平台上运行的可执行包。
5.根据权利要求4所述的测试前置实现方法,其特征在于,所述待测试代码的待测试代码ID与存储地址相关联;
所述在所述系统平台上运行所述编译部署脚本,以从版本管理工具获取所述待测试代码,包括:
运行所述编译部署脚本,获取与所述待测试代码ID相关联的所述存储地址;
根据所述存储地址获取所述待测试代码。
6.根据权利要求1所述的测试前置实现方法,其特征在于,将所述可执行包部署在所述系统平台上,之后还包括:
重启所述系统平台的服务器,更新部署在所述系统平台上的所述可执行包。
7.一种测试前置实现装置,其特征在于,包括:
测试环境连通模块,用于将系统平台和至少两个测试环境子系统相连通,至少两个所述测试环境子系统之间具有关联关系;
编译部署脚本创建模块,用于创建编译部署脚本;
可执行包获取模块,用于运行所述编译部署脚本获取待测试代码,将所述待测试代码进行编译和打包,获取能够在所述系统平台上运行的可执行包,所述待测试代码是指需在系统平台和与所述系统平台连通的至少两个测试环境子系统进行测试的代码;
部署模块,用于将所述可执行包部署在所述系统平台上,将所述可执行包与所述系统平台的域名和端口号关联,并将所述可执行包与所述系统平台相连通的至少两个所述测试环境子系统的域名和端口号关联,实现测试前置。
8.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述测试前置实现方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述测试前置实现方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711040815.2A CN107885658B (zh) | 2017-10-31 | 2017-10-31 | 测试前置实现方法、装置、终端设备及存储介质 |
PCT/CN2018/073918 WO2019085290A1 (zh) | 2017-10-31 | 2018-01-24 | 测试前置实现方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711040815.2A CN107885658B (zh) | 2017-10-31 | 2017-10-31 | 测试前置实现方法、装置、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107885658A CN107885658A (zh) | 2018-04-06 |
CN107885658B true CN107885658B (zh) | 2019-06-21 |
Family
ID=61782929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711040815.2A Active CN107885658B (zh) | 2017-10-31 | 2017-10-31 | 测试前置实现方法、装置、终端设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107885658B (zh) |
WO (1) | WO2019085290A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189676A (zh) * | 2018-08-20 | 2019-01-11 | 北京旷视科技有限公司 | 人脸解锁软件测试方法、装置及测试系统 |
CN109101428B (zh) * | 2018-08-21 | 2021-11-05 | 宜人恒业科技发展(北京)有限公司 | 一种ui自动化测试系统 |
CN109189680B (zh) * | 2018-08-24 | 2019-08-06 | 苏州玩友时代科技股份有限公司 | 一种应用发布和配置的系统及方法 |
CN112148583A (zh) * | 2019-06-27 | 2020-12-29 | 北京车和家信息技术有限公司 | 一种软件测试方法及系统 |
CN111459813B (zh) * | 2020-03-30 | 2023-08-15 | 北京百度网讯科技有限公司 | 测试处理方法及装置 |
CN112035365B (zh) * | 2020-09-01 | 2023-08-18 | 中国银行股份有限公司 | 支持多测试环境的版本部署方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102043714A (zh) * | 2010-12-10 | 2011-05-04 | 成电汽车电子产业园(昆山)有限公司 | 一种嵌入式软件自动测试系统 |
CN103581247A (zh) * | 2012-07-30 | 2014-02-12 | 杭州洱海科技有限公司 | 一种基于云计算环境的分布式Web测试方法 |
CN104539487A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于云平台的系统测试及可靠性评估方法 |
CN104793946A (zh) * | 2015-04-27 | 2015-07-22 | 广州杰赛科技股份有限公司 | 基于云计算平台的应用部署方法和系统 |
WO2016000126A1 (zh) * | 2014-06-30 | 2016-01-07 | 北京新媒传信科技有限公司 | 一种自动化部署方法和终端 |
CN106933730A (zh) * | 2015-12-29 | 2017-07-07 | 北京国睿中数科技股份有限公司 | 基于测试框架系统的测试方法、装置和测试框架系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080320071A1 (en) * | 2007-06-21 | 2008-12-25 | International Business Machines Corporation | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system |
CN100543698C (zh) * | 2007-09-29 | 2009-09-23 | 中兴通讯股份有限公司 | 一种分布式软件系统的集成测试系统及方法 |
CN102650966B (zh) * | 2011-02-24 | 2016-01-27 | 王轶辰 | 一种面向复用的嵌入式软件测试方法及其测试系统 |
CN102156673B (zh) * | 2011-04-20 | 2013-09-18 | 北京航空航天大学 | 面向测试用例描述的gui自动化测试系统及其测试方法 |
CN103970650B (zh) * | 2014-04-09 | 2017-02-15 | 广州杰赛科技股份有限公司 | 分布式测试方法和装置 |
-
2017
- 2017-10-31 CN CN201711040815.2A patent/CN107885658B/zh active Active
-
2018
- 2018-01-24 WO PCT/CN2018/073918 patent/WO2019085290A1/zh active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102043714A (zh) * | 2010-12-10 | 2011-05-04 | 成电汽车电子产业园(昆山)有限公司 | 一种嵌入式软件自动测试系统 |
CN103581247A (zh) * | 2012-07-30 | 2014-02-12 | 杭州洱海科技有限公司 | 一种基于云计算环境的分布式Web测试方法 |
WO2016000126A1 (zh) * | 2014-06-30 | 2016-01-07 | 北京新媒传信科技有限公司 | 一种自动化部署方法和终端 |
CN104539487A (zh) * | 2015-01-20 | 2015-04-22 | 成都益联科创科技有限公司 | 一种基于云平台的系统测试及可靠性评估方法 |
CN104793946A (zh) * | 2015-04-27 | 2015-07-22 | 广州杰赛科技股份有限公司 | 基于云计算平台的应用部署方法和系统 |
CN106933730A (zh) * | 2015-12-29 | 2017-07-07 | 北京国睿中数科技股份有限公司 | 基于测试框架系统的测试方法、装置和测试框架系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2019085290A1 (zh) | 2019-05-09 |
CN107885658A (zh) | 2018-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107885658B (zh) | 测试前置实现方法、装置、终端设备及存储介质 | |
CN104111944B (zh) | 页面处理方法和装置以及页面生成方法和装置 | |
KR101784784B1 (ko) | 클라이언트-서버 브리지를 사용하는 객체 관리 | |
US8666924B2 (en) | Message conduit systems with algorithmic data stream control and methods for processing thereof | |
CN104520814B (zh) | 用于配置云计算系统的系统和方法 | |
US10636084B2 (en) | Methods and systems for implementing on-line financial institution services via a single platform | |
KR102218995B1 (ko) | 코드 가상화 및 원격 프로세스 호출 생성을 위한 방법 및 장치 | |
CN108628661A (zh) | 云制造服务的自动建置方法、云制造系统 | |
CN106559438A (zh) | 一种基于目标网络平台的程序上传方法和装置 | |
CN110347942A (zh) | 页面跳转方法、装置、存储介质及计算机设备 | |
CN106201862A (zh) | web服务压力测试方法及装置 | |
CN105100127A (zh) | 用于验证在云计算环境中的应用部署拓扑的设备和方法 | |
CN112256321A (zh) | 静态库打包方法、装置、计算机设备和存储介质 | |
CN103257852B (zh) | 一种分布式应用系统的开发环境搭建的方法和装置 | |
CN107707625A (zh) | 基于Maven的前台资源打包并进行版本管理与使用的方法 | |
CN109032631A (zh) | 应用程序补丁包获取方法、装置、计算机设备及存储介质 | |
CN107463453A (zh) | 同一终端不同应用间通信的方法、装置、设备和存储介质 | |
CN107301137A (zh) | Rset接口实现方法和装置及电子设备和计算机可读存储介质 | |
CN106339237A (zh) | 针对JavaEE领域WEB应用的插件加载框架及方法 | |
CN113110864A (zh) | 应用程序更新方法、装置及存储介质 | |
CN108965375A (zh) | 服务调用代理控制系统、方法、服务器及可读存储介质 | |
CN109739526A (zh) | 代码更新方法和装置 | |
CN103561082B (zh) | 压缩请求的处理方法及服务器 | |
CN110109684A (zh) | 区块链节点管理代理服务安装方法、电子装置及存储介质 | |
US10310962B2 (en) | Infrastructure rule generation |
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 |