CN111813683A - 一种通用的软件测试环境自动同步方法 - Google Patents
一种通用的软件测试环境自动同步方法 Download PDFInfo
- Publication number
- CN111813683A CN111813683A CN202010676880.XA CN202010676880A CN111813683A CN 111813683 A CN111813683 A CN 111813683A CN 202010676880 A CN202010676880 A CN 202010676880A CN 111813683 A CN111813683 A CN 111813683A
- Authority
- CN
- China
- Prior art keywords
- synchronization
- database
- test environment
- target
- software 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.)
- Granted
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/3664—Environments for testing or debugging software
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种通用的软件测试环境自动同步方法,包括如下步骤:S1、定义同步规则:S11、进行同步设置,配置来源和目标信息;S12、同步程序代码;S13、同步数据库脚本;S14、配置文件;S2、同步流程:S21、自主选择同步方式;S22、根据每个***定义好的同步规则开始执行,并生成相关日志;S23、同步完成后,生成历史记录;S24、自动启动对应的应用服务,检测应用服务是否正常。本发明能提高集群部署多台服务器的执行效率,有利于部署版本迭代快的功能测试环境,有利于部署独立的性能测试环境,实现自动化测试,减少人工操作工作量和降低错误率。
Description
技术领域
本发明涉及软件测试领域,尤其涉及的是一种通用的软件测试环境自动同步方法。
背景技术
在软件***测试阶段,需要同时开展功能测试、性能测试、安全测试、自动化测试等不同类型的测试工作,为避免各项工作之间相互干扰,需要基于同一套程序代码和数据库搭建多套不同的服务器测试环境;目前通常是运维人员通过人工操作将相关文件分别在每台服务器上进行复制更新,比较浪费人力和时间。
现有技术主要以自动部署和测试为主,缺少对软件测试环境后续更新的同步过程和同步规则的详细定义。实现方式是通过获取待测试软件并将其解析,得到与待测试软件相匹配的目标测试环境,依据目标测试环境选择目标测试机器,将其待测试软件发送至目标服务器,驱动目标测试机器安装软件并进行测试。
现有技术缺乏一套完整的同步流程体系,通常是根据数据库类型、版本、操作***和CPU种类来选择目标机器进行同步,而过程中缺少对数据和结构的同步策略。如果采用传统的搭建测试环境方式,需要将程序代码和数据库分开操作和执行,不能自定义多种策略全自动同步。
另外还存在以下问题:软件程序在首次部署安装完成,部分软件在后续更新环境时不必重复安装,部分文件不需要更新,部分基础数据不需要更新等难以指定,需要人工判断操作。同步前无法自定义方式自动备份,在同时维护多台服务器的情况下,不能支持一对多或多对一的方式进行多套环境定时同步。
因此,现有技术存在缺陷,需要改进。
发明内容
本发明所要解决的技术问题是:提供一种效率高、能自动化测试、降低人工工作量和错误率的通用的软件测试环境自动同步方法。
本发明的技术方案如下:一种通用的软件测试环境自动同步方法,包括如下步骤:
S1、定义同步规则:
S11、进行同步设置,配置来源和目标信息;
S12、同步程序代码;
S13、同步数据库脚本;
S14、配置文件;
S2、同步流程:
S21、自主选择同步方式;
S22、根据每个***定义好的同步规则开始执行,并生成相关日志;
S23、同步完成后,生成历史记录;
S24、自动启动对应的应用服务,检测应用服务是否正常。
采用上述技术方案,所述的通用的软件测试环境自动同步方法中,S11中,配置来源和目标信息,包括远程服务器连接信息、文件目录、相关管理权限的账号密码。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S12中,针对软件***的每个子***,指定源文件夹、目标文件夹;
如果是首次同步,在目标服务器上自动创建目标文件夹,然后再同步程序代码;如果是非首次同步,则先对目标文件夹进行备份,然后对目标文件夹目录下所有文件进行删除,再同步程序代码。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S13中,包括3种策略:
仅结构同步,通过源数据库和目标数据库的结构比对,自动得到同步的sql,然后在目标数据库中执行此sql脚本,完成结构同步;
仅数据同步:将源数据库的所有表数据导出成sql文件,然后在目标数据库中执行,完成数据同步;
全部同步:将整个源数据库进行导出,然后导入到目标数据库,完成全库同步。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S14中,包括配置IP地址、服务端口、URL调用地址、REDIS连接、数据库连接的文件,并根据本地环境属性自动修改。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S21中,包括定时自动执行和随时手工执行同步。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,执行同步之前,程序代码和配置文件在同步之前会将对应的应用服务进行关闭并做好文件备份;数据库同步则不关掉服务和备份。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S22中,优先数据库和配置文件同步,接着每个子***的程序代码按先后循序逐个进行同步。
采用上述各个技术方案,所述的通用的软件测试环境自动同步方法中,S23中,历史记录包括子***名称、文件类型和文件名称、同步时间、同步状态。
采用上述各个技术方案,本发明具有如下有益效果:
1、提高集群部署多台服务器的执行效率;
2、有利于部署版本迭代快的功能测试环境(基于开发环境同步);
3、有利于部署独立的性能测试环境;
4、有利于部署独立的自动化测试环境;
5、减少运维人员操作的工作量和降低实施错误率。
附图说明
图1为本发明的流程示意图。
具体实施方式
以下结合附图和具体实施例,对本发明进行详细说明。
本发明是建立一套高效的自动化同步机制,将软件程序、数据库和配置信息自动同步到指定服务器,然后自动部署环境,从而释放研发人力资源,提高工作效率。
通过本发明提供的方法,实现自动搭建测试环境,以便开展各种不同类型的测试。尤其适合搭建自动化测试环境,因为该环境更新频次较高,而且环境搭建成功后可直接触发执行自动化测试脚本,进行自动化接口测试、APP测试、WEB端测试等,从而实现对存量功能的快速测试和回归验证,自动发现问题,提高软件质量。
如图1,具体实施例主要有两个步骤:第一步,S1、定义同步规则;第二步,S2、同步流程。
S1、定义同步规则,又包含四个具体的步骤S11、S12、S13、S14。
S11、进行同步设置,配置来源和目标信息,主要包括远程服务器连接信息、文件目录、相关管理权限的账号密码等。
S12、同步程序代码,针对软件***的每个子***,指定源文件夹、目标文件夹。
在此环节,如果是首次同步,在目标服务器上自动创建目标文件夹,然后再同步程序代码;如果是非首次同步,则先对目标文件夹进行备份,然后对目标文件夹目录下所有文件进行删除,再同步程序代码。
S13、同步数据库脚本,包括3种策略:仅结构同步,仅数据同步,全部同步。
仅结构同步:通过源数据库和目标数据库的结构比对,自动得到同步的sql,然后在目标数据库中执行此sql脚本,完成结构同步。
仅数据同步:将源数据库的所有表数据导出成sql文件,然后在目标数据库中执行,完成数据同步。
全部同步:将整个源数据库进行导出,然后导入到目标数据库,完成全库同步。
S14、配置文件,包括配置IP地址、服务端口、URL调用地址、REDIS连接、数据库连接的文件,并根据本地环境属性自动修改。
S2、同步流程,同样包含四个具体的步骤S21、S22、S23、S24。
S21、自主选择同步方式,包括定时自动执行和随时手工执行同步,这两种方式的选择仅根据实际需要进行操作,而不限定于哪一种方式,方便进行同步操作。
在执行同步之前,程序代码和配置文件在同步之前会将对应的应用服务进行关闭并做好文件备份,避免文件正在占用影响执行同步或者同步过程出现异常而需要回滚版本。数据库同步则不关掉服务和备份。
S22、根据每个***定义好的同步规则开始执行,并生成相关日志,以便查阅。优先数据库和配置文件同步,接着每个子***程序代码按先后循序逐个进行同步。
S23、同步完成后,生成历史记录。历史记录包括子***名称、文件类型和文件名称、同步时间、同步状态等信息。
S24、自动启动对应的应用服务,检测应用服务是否正常,如能否正常访问和使用等。
经过上述技术方案的同步测试,基于自动搭建的环境,可开展如下工作:功能测试、性能测试、自动化测试(可添加接口、UI、APP自动化脚本进行回归测试)。
采用上述各个技术方案,本发明具有如下有益效果:
1、提高集群部署多台服务器的执行效率;
2、有利于部署版本迭代快的功能测试环境(基于开发环境同步);
3、有利于部署独立的性能测试环境;
4、有利于部署独立的自动化测试环境;
5、减少运维人员操作的工作量和降低实施错误率。
以上仅为本发明的较佳实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种通用的软件测试环境自动同步方法,其特征在于,包括如下步骤:
S1、定义同步规则:
S11、进行同步设置,配置来源和目标信息;
S12、同步程序代码;
S13、同步数据库脚本;
S14、配置文件;
S2、同步流程:
S21、自主选择同步方式;
S22、根据每个***定义好的同步规则开始执行,并生成相关日志;
S23、同步完成后,生成历史记录;
S24、自动启动对应的应用服务,检测应用服务是否正常。
2.根据权利要求1所述的通用的软件测试环境自动同步方法,其特征在于,S11中,配置来源和目标信息,包括远程服务器连接信息、文件目录、相关管理权限的账号密码。
3.根据权利要求2所述的通用的软件测试环境自动同步方法,其特征在于,S12中,针对软件***的每个子***,指定源文件夹、目标文件夹;
如果是首次同步,在目标服务器上自动创建目标文件夹,然后再同步程序代码;如果是非首次同步,则先对目标文件夹进行备份,然后对目标文件夹目录下所有文件进行删除,再同步程序代码。
4.根据权利要求3所述的通用的软件测试环境自动同步方法,其特征在于,S13中,包括3种策略:
仅结构同步:通过源数据库和目标数据库的结构比对,自动得到同步的sql,然后在目标数据库中执行此sql脚本,完成结构同步;
仅数据同步:将源数据库的所有表数据导出成sql文件,然后在目标数据库中执行,完成数据同步;
全部同步:将整个源数据库进行导出,然后导入到目标数据库,完成全库同步。
5.根据权利要求4所述的通用的软件测试环境自动同步方法,其特征在于,S14中,包括配置IP地址、服务端口、URL调用地址、REDIS连接、数据库连接的文件,并根据本地环境属性自动修改。
6.根据权利要求1所述的通用的软件测试环境自动同步方法,其特征在于,S21中,包括定时自动执行和随时手工执行同步。
7.根据权利要求6所述的通用的软件测试环境自动同步方法,其特征在于,执行同步之前,程序代码和配置文件在同步之前会将对应的应用服务进行关闭并做好文件备份;数据库同步则不关掉服务和备份。
8.根据权利要求7所述的通用的软件测试环境自动同步方法,其特征在于,S22中,优先数据库和配置文件同步,接着每个子***的程序代码按先后循序逐个进行同步。
9.根据权利要求8所述的通用的软件测试环境自动同步方法,其特征在于,S23中,历史记录包括子***名称、文件类型和文件名称、同步时间、同步状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010676880.XA CN111813683B (zh) | 2020-07-14 | 2020-07-14 | 一种通用的软件测试环境自动同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010676880.XA CN111813683B (zh) | 2020-07-14 | 2020-07-14 | 一种通用的软件测试环境自动同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111813683A true CN111813683A (zh) | 2020-10-23 |
CN111813683B CN111813683B (zh) | 2023-10-03 |
Family
ID=72865087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010676880.XA Active CN111813683B (zh) | 2020-07-14 | 2020-07-14 | 一种通用的软件测试环境自动同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111813683B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395363A (zh) * | 2020-12-04 | 2021-02-23 | 北京有竹居网络技术有限公司 | 数据同步方法、装置、设备及可读存储介质 |
CN113836015A (zh) * | 2021-09-23 | 2021-12-24 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
CN113836015B (zh) * | 2021-09-23 | 2024-08-02 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2770789A1 (en) * | 2011-03-11 | 2012-09-11 | Desktopsites Inc. | System and method for lauching a resource in a network |
CN107038227A (zh) * | 2017-03-31 | 2017-08-11 | 武汉票据交易中心有限公司 | 一种脚本代码文件的增量同步方法及*** |
WO2017177769A1 (zh) * | 2016-04-11 | 2017-10-19 | 平安科技(深圳)有限公司 | Ogg 版本部署方法、***、服务器和存储介质 |
CN107835982A (zh) * | 2015-05-04 | 2018-03-23 | 赛义德·卡姆兰·哈桑 | 用于在计算机网络中管理安全性的方法和设备 |
CN108132878A (zh) * | 2017-12-21 | 2018-06-08 | 税友软件集团股份有限公司 | 一种测试环境的调度方法及*** |
CN110008123A (zh) * | 2019-03-28 | 2019-07-12 | 武汉达梦数据库有限公司 | 一种自动部署测试软件的方法以及相应的装置 |
CN110177144A (zh) * | 2019-05-27 | 2019-08-27 | 万惠投资管理有限公司 | 一种基于私有云一键复制应用环境的方法 |
CN110389903A (zh) * | 2019-07-19 | 2019-10-29 | 中国工商银行股份有限公司 | 测试环境部署方法和装置、电子设备和可读存储介质 |
CN110413677A (zh) * | 2019-07-30 | 2019-11-05 | 无锡柠檬科技服务有限公司 | 一种支持并发应用的分布式数据同步方法和*** |
CN110795343A (zh) * | 2019-10-12 | 2020-02-14 | 车智互联(北京)科技有限公司 | 测试***、测试方法和计算设备 |
CN111008141A (zh) * | 2019-12-10 | 2020-04-14 | 紫光云(南京)数字技术有限公司 | 一种自动化增量部署测试环境方法 |
-
2020
- 2020-07-14 CN CN202010676880.XA patent/CN111813683B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2770789A1 (en) * | 2011-03-11 | 2012-09-11 | Desktopsites Inc. | System and method for lauching a resource in a network |
CN107835982A (zh) * | 2015-05-04 | 2018-03-23 | 赛义德·卡姆兰·哈桑 | 用于在计算机网络中管理安全性的方法和设备 |
WO2017177769A1 (zh) * | 2016-04-11 | 2017-10-19 | 平安科技(深圳)有限公司 | Ogg 版本部署方法、***、服务器和存储介质 |
CN107038227A (zh) * | 2017-03-31 | 2017-08-11 | 武汉票据交易中心有限公司 | 一种脚本代码文件的增量同步方法及*** |
CN108132878A (zh) * | 2017-12-21 | 2018-06-08 | 税友软件集团股份有限公司 | 一种测试环境的调度方法及*** |
CN110008123A (zh) * | 2019-03-28 | 2019-07-12 | 武汉达梦数据库有限公司 | 一种自动部署测试软件的方法以及相应的装置 |
CN110177144A (zh) * | 2019-05-27 | 2019-08-27 | 万惠投资管理有限公司 | 一种基于私有云一键复制应用环境的方法 |
CN110389903A (zh) * | 2019-07-19 | 2019-10-29 | 中国工商银行股份有限公司 | 测试环境部署方法和装置、电子设备和可读存储介质 |
CN110413677A (zh) * | 2019-07-30 | 2019-11-05 | 无锡柠檬科技服务有限公司 | 一种支持并发应用的分布式数据同步方法和*** |
CN110795343A (zh) * | 2019-10-12 | 2020-02-14 | 车智互联(北京)科技有限公司 | 测试***、测试方法和计算设备 |
CN111008141A (zh) * | 2019-12-10 | 2020-04-14 | 紫光云(南京)数字技术有限公司 | 一种自动化增量部署测试环境方法 |
Non-Patent Citations (3)
Title |
---|
MAOMAOLI1010: "svn实现的代码仓库与测试环境代码同步", pages 1 - 2, Retrieved from the Internet <URL:https://blog.51cto.com/u_266365/1298168> * |
SUBHACHANDRA CHANDRA等: "Whither Generic Recovery from Application Faults? A Fault Study using Open-Source Software", 《 PROCEEDING INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS. DSN 2000》, pages 1 - 10 * |
张健等: "程序分析研究进展", 《软件学报》, vol. 30, no. 1, pages 80 - 109 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112395363A (zh) * | 2020-12-04 | 2021-02-23 | 北京有竹居网络技术有限公司 | 数据同步方法、装置、设备及可读存储介质 |
CN112395363B (zh) * | 2020-12-04 | 2024-03-26 | 北京有竹居网络技术有限公司 | 数据同步方法、装置、设备及可读存储介质 |
CN113836015A (zh) * | 2021-09-23 | 2021-12-24 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
CN113836015B (zh) * | 2021-09-23 | 2024-08-02 | 中国农业银行股份有限公司 | 一种数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111813683B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3769223B1 (en) | Unified test automation system | |
CN107729066B (zh) | 一种基于svn资源库自动化构建发布方法与装置 | |
US20090307763A1 (en) | Automated Test Management System and Method | |
US20060259594A1 (en) | Progressive deployment and maintenance of applications on a set of peer nodes | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
CN101145964A (zh) | 一种网管***自动冒烟测试方法和*** | |
CN106201502B (zh) | 一种跨主机应用程序部署方法及装置 | |
CN112463631A (zh) | 一种芯片驱动程序测试方法、装置、设备及可读存储介质 | |
CN115567392B (zh) | 一种客户内部业务***自动部署升级方法 | |
CN107992326B (zh) | 基于Struts2框架的Java自动化代码发布方法 | |
CN111611157B (zh) | Gms持续集成构建自动化测试方法及*** | |
US20080172579A1 (en) | Test Device For Verifying A Batch Processing | |
CN111813683B (zh) | 一种通用的软件测试环境自动同步方法 | |
CN111813420A (zh) | 一种对OpenStack集群进行自动化性能测试的方法 | |
CN110795105A (zh) | 一种配电自动化主站***自动编译部署方法与*** | |
CN111209012A (zh) | 一种面向Linux***的软件代理端自动化部署的方法 | |
CN116383090B (zh) | 一种用于麒麟***迁移工具的自动化测试方法及平台 | |
CN115809096B (zh) | 操作***批量自适应升级方法 | |
CN103324494A (zh) | 自动制作补丁的方法、服务器及*** | |
US20090158266A1 (en) | Deployment tool for increasing efficiency in a production computer system | |
CN112764789A (zh) | 一种分布式软件升级方法及节点 | |
CN114296745A (zh) | 软件自动集成、部署、测试方法 | |
CN106970860B (zh) | 一种复现centos7操作***故障的***及方法 | |
CN113127884A (zh) | 一种基于虚拟化的漏洞并行验证方法及装置 | |
CN112231217A (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 |