CN109726127A - 一种基于单套测试环境的自动扩充方法 - Google Patents
一种基于单套测试环境的自动扩充方法 Download PDFInfo
- Publication number
- CN109726127A CN109726127A CN201811629708.8A CN201811629708A CN109726127A CN 109726127 A CN109726127 A CN 109726127A CN 201811629708 A CN201811629708 A CN 201811629708A CN 109726127 A CN109726127 A CN 109726127A
- Authority
- CN
- China
- Prior art keywords
- configuration
- related system
- timing related
- new environment
- timing
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明涉及计算机软件领域,提供了一种基于单套测试环境的自动扩充方法。其主旨在于解决大量时序性测试任务执行可行性问题,和效率问题,其主要方案包括:1:抽取时序性相关***A,并配置关联配置模板B2;2:建立快速部署标准,根据需要动态快速部署新环境时序相关***A’;3:根据快速部署标准生成新环境自有配置模板C1,并通过新环境自有配置模板C自动添加新环境的关联配置,完成新环境时序相关***A’与上下游***就关联;4:新环境时序性相关***A’从时序性相关***A进行数据同步,根据时序任务执行计划中日期字段数据不同,随机分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
Description
技术领域
本发明涉及计算机软件领域,具体涉及测试领域,提供了一种基于单套测试环境的自动扩充方法。
背景技术
在软件测试中业务功能测试需要以测试环境为依托进行,业务测试任务量的不确定性对测试环境提出了较高要求,特别是在大量任务并发的情况下。
时序性任务:测试点对时间有较强依赖,比如某测试任务只能在10号执行,下一任务只能在20号执行。比如银行测试中的日切批量测试。时序性任务对测试环境要求很高,在同一时刻同一环境只能支持一个。一套测试环境往往包含多个相互关联的业务***。
为解决大量时序性任务测试可行性及时效性问题。现有技术中目前的解决大量时序任务测试的现有方案主要有两种。
方案一:各个时序测试任务按对时间要求依次排队,按串行的方式执行,排在后面的测试任务需等前面任务执行完成及对应校验后才能执行下一任务。如果前面测试任务发现缺陷后面任务需等缺陷解决后才能验证。如此虽解决了执行可行性上的问题,但是势必会造成各测试任务相互依赖互相等待、浪费大量时间,如果任务较多还会造成各测试任务间的数据相互干扰,增加测试验证难度,进一步增加测试耗时。
方案二:根据时序测试任务的数量,建立对应套数的测试环境,理想情况下每个任务对应一套环境,如此便能解决多时序任务执行可行性问题以及测试任务执行时效性问题。但是一套测试环境往往由数十个业务***组成,建立过多的测试环境会耗费大量的环境资源及人力资源。且由于时序测试任务量的不确定性,会造成一定程度的环境资源浪费,同时对测试环境的动态管理亦提出了较高挑战。
以上两种方案虽能都能解决大量时序性测试任务执行可行性问题,但都有较为严重附加问题。
与以上两种方案相比,本方案在解决可行性的基础上优化了执行耗时及环境资源浪费问题。针对大量时序测试任务本方案会在多个相关***中梳理出和时序相关的***,仅对相关***进行扩充,其余***会通过自动配置的方式进行关联,形成多套虚拟环境,数据在原始环境及虚拟环境间同步,在使用上能达到和建多套实体环境相同的效果。
发明内容
本发明的目的在于解决大量时序性测试任务执行可行性问题,和效率问题,提供一种不需要设置多个环境即可实现测试扩充的方法。
本发明为实现上述目的采用以下技术方案:
一种基于单套测试环境的自动扩充方法,其特征在于,包括以下步骤:
步骤1:抽取时序性相关***A,并根据时序性相关***A的私有配置变量B配置关联配置模板B2;
步骤2:建立快速部署标准,根据需要动态快速部署新环境时序相关***A’;
具体标准如下:
A***应用目录统一:应用放在统一的文件目录,
A***应用名称命名统一:均以原应用名+递增的自然数为新应用名、
A***设置文件配置统一:统一配置配置中心地址、新应用名一建立应用与配置中心的对应关系。
将该应用部署标准形成配置脚本,当用户输入需要的环境数量时即可重复执行该脚本部署多套。
步骤3:根据快速部署标准生成新环境自有配置模板C1,并通过新环境自有配置模板C自动添加新环境的关联配置,完成新环境时序相关***A’与上下游***就关联;
步骤4:新环境时序性相关***A’从步骤1所述的时序性相关***A进行数据同步,根据时序任务执行计划中日期字段数据不同,随机分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
上述技术方案中,步骤1包括以下步骤:
步骤1.1:抽取和时序性任务执行相关的时序相关***A;
步骤1.2:梳理时序相关***A与上下游***间关联配置,将关联配置以键值对的形式进行存储,关联配置包括公共配置和私有配置;将私有配置中变化的内容提取出来形成私有配置变量B1,将公有配置名、公有配置值,私有配置名,私有配置变量B1逐个存储形成关联配置模板B2;
上述技术方案中,步骤2包括以下步骤:统一时序相关***A的应用及数据库的部署标准,能根据时序任务需求动态部署时序相关***A。
上述技术方案中,步骤3包括以下步骤:
步骤3.1:在步骤2的基础上,通过代码自动获取关联配置模板B2中的私有配置变量B1的相关值,经过字符串拼接得到新环境时序相关***A’的私有配置变量实际值B1’,私有配置变量实际值B1’替换关联配置模板B2的私有配置变量B1得到新环境时序相关***A’的自有配置模板C1。
步骤3.2:在全局配置中心***,通过API访问的方式自动为新环境时序相关***A’的自有配置模板C1中的配置项建立集群,每一个新环境时序相关***A’对应一个集群,在对应的集群中逐个添加C1中的配置项,完成新环境时序相关***A’与上下游***就关联。
上述技术方案中,步骤4包括以下步骤:
步骤4.1:新环境时序相关***A’数据均从时序相关***A通过数据同步获得,首先获取数据库数据量的大小D1及需要同步的库的数量,并根据实际需要设置数据量阈值D2;
步骤4.2:如果数据量D1大于数据量阈值D2则采用多线程同步以提高同步效率,反之则采用单线程同步,数据量大小判定及同步方式切换均采用代码自动执行;
步骤4.3:根据时序任务执行计划中日期字段数据不同,随机分分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
本发明因为采用上述技术方案,因此具备以下效果:
1、在环境搭建方面,同搭建一整套环境相比只扩充搭建时序性相关***能节约环境资源、节约环境搭建时间。
2、环境全程自动搭建,将搭建做到标准化模板化,搭建效率更高,也利于环境动态维护。
3、在测试任务方面,大量日切作业由串行执行变并行执行,减少测试任务间的相互影响相互等待、提高测试准确性、减少数据污染。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明方法流程示意图;
图2为本发明***示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,即所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
实施例1
一种基于单套测试环境的自动扩充方法,其特征在于,包括以下步骤:
步骤1:抽取时序性相关***A,并根据时序性相关***A的私有配置变量B配置关联配置模板B2:
步骤2:建立快速部署标准,根据需要动态快速部署新环境时序相关***A’;
步骤3:根据快速部署标准生成新环境自有配置模板C1,并通过新环境自有配置模板C自动添加新环境的关联配置,完成新环境时序相关***A’与上下游***就关联;
步骤4:新环境时序性相关***A’从步骤1所述的时序性相关***A进行数据同步,根据时序任务执行计划中日期字段数据不同,随机分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
上述技术方案中,步骤1包括以下步骤:
步骤1.1:抽取和时序性任务执行相关的时序相关***A;
步骤1.2:梳理时序相关***A与上下游***间关联配置,将关联配置以键值对的形式进行存储,关联配置包括公共配置和私有配置;将私有配置中变化的内容提取出来形成私有配置变量B1,将公有配置名、公有配置值,私有配置名,私有配置变量B1逐个存储形成关联配置模板B2;
上述技术方案中,步骤2包括以下步骤:统一时序相关***A的应用及数据库的部署标准,能根据时序任务需求动态部署时序相关***A。
上述技术方案中,步骤3包括以下步骤:
步骤3.1:在步骤2的基础上,通过代码自动获取关联配置模板B2中的私有配置变量B1的相关值,经过字符串拼接得到新环境时序相关***A’的私有配置变量实际值B1’,私有配置变量实际值B1’替换关联配置模板B2的私有配置变量B1得到新环境时序相关***A’的自有配置模板C1。
对于经过字符串拼接得到新环境时序相关***A’的私有配置变量实际值B1’举例:
比如我的私有配置变量名叫path,这个变量的实际值为http:192.168.1.1,我所值的字符串拼接就是指把“http:”和“192.168.1.1”拼接上。至于每个变量是加http还是加其他的前后缀或是怎么拼接,这个规则是每个变量都不一样,规则应该是存在步骤1的配置模板中的。
步骤3.2:在全局配置中心***,通过API访问的方式自动为新环境时序相关***A’的自有配置模板C1中的配置项建立集群,每一个新环境时序相关***A’对应一个集群,在对应的集群中逐个添加C1中的配置项,完成新环境时序相关***A’与上下游***就关联。
上述技术方案中,步骤4包括以下步骤:
步骤4.1:新环境时序相关***A’数据均从时序相关***A通过数据同步获得,首先获取数据库数据量的大小D1及需要同步的库的数量,并根据实际需要设置数据量阈值D2;
步骤4.2:如果数据量D1大于数据量阈值D2则采用多线程同步以提高同步效率,反之则采用单线程同步,数据量大小判定及同步方式切换均采用代码自动执行;
步骤4.3:根据时序任务执行计划中日期字段数据不同,随机分分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
实施例2
在实施例1的基础上还包括新环境验证的步骤,具体步骤如下:
步骤5.1:在上游***通过接口发起一笔测试交易,获取接口返回值并做数据验证,上游***执行无误后,将数据同步到新环境。
步骤5.1:执行时序相关任务,验证对应交易在本***产生数据的正确性。如此便能对新建环境的可用性做判断。如验证未通过会给出相应预警提示。整个交易发起、数据验证、数据同步均采用自动化脚本执行,通过将每个校验点的标准值,及校验数据查询SQL语句存入模板则可做到全程自动校验。
步骤5.3:通过数据查询相关SQL,查询时序***数据库中测试交易相关数据并删除。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于单套测试环境的自动扩充方法,其特征在于,包括以下步骤:
步骤1:抽取时序性相关***A,并根据时序性相关***A的私有配置变量B配置关联配置模板B2;
步骤2:建立快速部署标准,根据需要动态快速部署新环境时序相关***A’;
步骤3:根据快速部署标准生成新环境自有配置模板C1,并通过新环境自有配置模板C自动添加新环境时序相关***A’的关联配置,完成新环境时序相关***A’与上下游***就关联;
步骤4:新环境时序性相关***A’从步骤1所述的时序性相关***A进行数据同步,根据时序任务执行计划中日期字段数据不同,随机分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
2.根据权利要求1所述的一种基于单套测试环境的自动扩充方法,其特征在于,步骤1包括以下步骤:
步骤1.1:抽取和时序性任务执行相关的时序相关***A;
步骤1.2:梳理时序相关***A与上下游***间关联配置,将关联配置以键值对的形式进行存储,关联配置包括公共配置和私有配置;将私有配置中变化的内容提取出来形成私有配置变量B1,将公有配置名、公有配置值,私有配置名,私有配置变量B1逐个存储形成关联配置模板B2。
3.根据权利要求1所述的一种基于单套测试环境的自动扩充方法,其特征在于,步骤2包括以下步骤:统一时序相关***A的应用及数据库的部署标准,根据时序任务需求动态部署时序相关***A。
4.根据权利要求1所述的一种基于单套测试环境的自动扩充方法,其特征在于,步骤3包括以下步骤:
步骤3.1:在步骤2的基础上,通过代码自动获取关联配置模板B2中的私有配置变量B1的相关值,经过字符串拼接得到新环境时序相关***A’的私有配置变量实际值B1’,私有配置变量实际值B1’替换关联配置模板B2的私有配置变量B1得到新环境时序相关***A’的自有配置模板C1。
步骤3.2:在全局配置中心***,通过API访问的方式自动为新环境时序相关***A’的自有配置模板C1中的配置项建立集群,每一个新环境时序相关***A’对应一个集群,在对应的集群中逐个添加C1中的配置项,完成新环境时序相关***A’与上下游***就关联。
5.根据权利要求1所述的一种基于单套测试环境的自动扩充方法,其特征在于,步骤4包括以下步骤:
步骤4.1:新环境时序相关***A’数据均从时序相关***A通过数据同步获得,首先获取数据库数据量的大小D1及需要同步的库的数量,并根据实际需要设置数据量阈值D2;
步骤4.2:如果数据量D1大于数据量阈值D2则采用多线程同步以提高同步效率,反之则采用单线程同步,数据量大小判定及同步方式切换均采用代码自动执行;
步骤4.3:根据时序任务执行计划中日期字段数据不同,随机分分配到各个新环境时序性相关***A’的执行任务,并根据执行任务,匹配执行对应日期字段的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811629708.8A CN109726127B (zh) | 2018-12-28 | 2018-12-28 | 一种基于单套测试环境的自动扩充方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811629708.8A CN109726127B (zh) | 2018-12-28 | 2018-12-28 | 一种基于单套测试环境的自动扩充方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109726127A true CN109726127A (zh) | 2019-05-07 |
CN109726127B CN109726127B (zh) | 2019-07-23 |
Family
ID=66297788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811629708.8A Active CN109726127B (zh) | 2018-12-28 | 2018-12-28 | 一种基于单套测试环境的自动扩充方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109726127B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795445A (zh) * | 2019-10-29 | 2020-02-14 | 北京字节跳动网络技术有限公司 | 并发任务的处理方法、装置、服务器设备及介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252469A (zh) * | 2008-03-24 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多网元自动化测试方法 |
US20120253728A1 (en) * | 2011-04-01 | 2012-10-04 | Verizon Patent And Licensing Inc. | Method and system for intelligent automated testing in a multi-vendor, multi-protocol heterogeneous environment |
CN103699479A (zh) * | 2012-09-27 | 2014-04-02 | 百度在线网络技术(北京)有限公司 | 一种沙盒测试环境构建***及构建方法 |
-
2018
- 2018-12-28 CN CN201811629708.8A patent/CN109726127B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252469A (zh) * | 2008-03-24 | 2008-08-27 | 中兴通讯股份有限公司 | 一种多网元自动化测试方法 |
US20120253728A1 (en) * | 2011-04-01 | 2012-10-04 | Verizon Patent And Licensing Inc. | Method and system for intelligent automated testing in a multi-vendor, multi-protocol heterogeneous environment |
CN103699479A (zh) * | 2012-09-27 | 2014-04-02 | 百度在线网络技术(北京)有限公司 | 一种沙盒测试环境构建***及构建方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110795445A (zh) * | 2019-10-29 | 2020-02-14 | 北京字节跳动网络技术有限公司 | 并发任务的处理方法、装置、服务器设备及介质 |
CN110795445B (zh) * | 2019-10-29 | 2022-08-05 | 北京字节跳动网络技术有限公司 | 并发任务的处理方法、装置、服务器设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109726127B (zh) | 2019-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105631028B (zh) | 一种数据库集群功能实现方法和*** | |
US7711693B2 (en) | Deployment of life-cycle model for LDAP applications | |
CN110309161B (zh) | 一种数据同步方法、装置及服务器 | |
CN104317843A (zh) | 一种数据同步etl*** | |
WO2018145559A1 (zh) | 持续集成流水线的生成方法和*** | |
CN105677465B (zh) | 应用于银行跑批处理的数据处理方法及装置 | |
CN112364049B (zh) | 数据同步脚本生成方法、***、终端及存储介质 | |
CN109298868A (zh) | 测绘影像数据处理软件智能动态部署及卸载方法 | |
CN107870982B (zh) | 数据处理方法、***和计算机可读存储介质 | |
CN107704550A (zh) | 文件迁移方法、装置以及计算机可读存储介质 | |
CN110795529A (zh) | 模型管理方法、装置、存储介质及电子设备 | |
CN104954482A (zh) | 管理配置的***及方法 | |
CN104462342B (zh) | 数据库快照同步处理方法及装置 | |
CN109614271A (zh) | 多个集群数据一致性的控制方法、装置、设备及存储介质 | |
CN109726127B (zh) | 一种基于单套测试环境的自动扩充方法 | |
CN110795331A (zh) | 软件测试的方法和装置 | |
CN110209732A (zh) | 关系型数据库到Hadoop数据库的数据同步方法和装置 | |
CN111435329A (zh) | 一种自动化测试方法和装置 | |
CN113760952A (zh) | 数据查询方法及装置、存储介质、电子装置 | |
CN111782618A (zh) | 一种数据同步*** | |
CN109614339B (zh) | 一种基于多套测试环境的自动扩充方法 | |
CN116842244A (zh) | 搜索引擎数据同步方法、***、设备和存储介质 | |
CN115495527A (zh) | 一种数据同步管理***和方法 | |
CN109657004A (zh) | 一种数据同步方法及装置 | |
CN112000671B (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 |