一种基于单套测试环境的自动扩充方法与流程

文档序号:17601186发布日期:2019-05-07 20:20阅读:119来源:国知局
一种基于单套测试环境的自动扩充方法与流程

本发明涉及计算机软件领域,具体涉及测试领域,提供了一种基于单套测试环境的自动扩充方法。



背景技术:

在软件测试中业务功能测试需要以测试环境为依托进行,业务测试任务量的不确定性对测试环境提出了较高要求,特别是在大量任务并发的情况下。

时序性任务:测试点对时间有较强依赖,比如某测试任务只能在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,查询时序系统数据库中测试交易相关数据并删除。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1