CN111813683A - 一种通用的软件测试环境自动同步方法 - Google Patents

一种通用的软件测试环境自动同步方法 Download PDF

Info

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
Application number
CN202010676880.XA
Other languages
English (en)
Other versions
CN111813683B (zh
Inventor
林锦波
张海勤
彭楚雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Qianhai Mobile Technology Co ltd
Original Assignee
Shenzhen Qianhai Mobile Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Qianhai Mobile Technology Co ltd filed Critical Shenzhen Qianhai Mobile Technology Co ltd
Priority to CN202010676880.XA priority Critical patent/CN111813683B/zh
Publication of CN111813683A publication Critical patent/CN111813683A/zh
Application granted granted Critical
Publication of CN111813683B publication Critical patent/CN111813683B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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中,历史记录包括子系统名称、文件类型和文件名称、同步时间、同步状态。
CN202010676880.XA 2020-07-14 2020-07-14 一种通用的软件测试环境自动同步方法 Active CN111813683B (zh)

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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112395363A (zh) * 2020-12-04 2021-02-23 北京有竹居网络技术有限公司 数据同步方法、装置、设备及可读存储介质
CN113836015A (zh) * 2021-09-23 2021-12-24 中国农业银行股份有限公司 一种数据处理方法及装置

Citations (11)

* Cited by examiner, † Cited by third party
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 紫光云(南京)数字技术有限公司 一种自动化增量部署测试环境方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 (3)

* Cited by examiner, † Cited by third party
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 中国农业银行股份有限公司 一种数据处理方法及装置

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
CN101145964A (zh) 一种网管系统自动冒烟测试方法和系统
CN106201502B (zh) 一种跨主机应用程序部署方法及装置
CN111813683B (zh) 一种通用的软件测试环境自动同步方法
CN113434158B (zh) 一种大数据组件的自定义管理方法、装置、设备及介质
CN112463631A (zh) 一种芯片驱动程序测试方法、装置、设备及可读存储介质
CN107992326B (zh) 基于Struts2框架的Java自动化代码发布方法
CN111611157B (zh) Gms持续集成构建自动化测试方法及系统
US20080172579A1 (en) Test Device For Verifying A Batch Processing
CN111813420A (zh) 一种对OpenStack集群进行自动化性能测试的方法
CN110795105A (zh) 一种配电自动化主站系统自动编译部署方法与系统
CN103324494A (zh) 自动制作补丁的方法、服务器及系统
CN115567392B (zh) 一种客户内部业务系统自动部署升级方法
US20060048137A1 (en) Method and apparatus for cloning an ORACLE RDBMS software
CN112764789A (zh) 一种分布式软件升级方法及节点
CN111209012A (zh) 一种面向Linux系统的软件代理端自动化部署的方法
CN114296745A (zh) 软件自动集成、部署、测试方法
CN106970860B (zh) 一种复现centos7操作系统故障的系统及方法
CN113127884A (zh) 一种基于虚拟化的漏洞并行验证方法及装置
CN111488264A (zh) 一种针对接口性能测试集群的部署调度方法
CN115809096B (zh) 操作系统批量自适应升级方法
CN116383090B (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