一种面向电力行业研发测试流水线构建方法与流程

文档序号:18188847发布日期:2019-07-17 05:29阅读:290来源:国知局
一种面向电力行业研发测试流水线构建方法与流程

本发明属于电力测试领域,尤其涉及一种面向电力行业研发测试流水线构建方法。



背景技术:

随着电力行业信息化建设的深入发展、信息化测试的深入应用,测试环境、测试类型、测试问题、测试数据均呈现出多样化和复杂化的趋势,集中管理测试项目、集中建设专业测试能力的传统的测试模式面临着巨大挑战,测试资源难以满足高速增长的测试需求,测试方法难以快速响应业务变化的新要求。

目前,电力行业的开发测试过程中,仍有一部分机械的工作由人去完成,把这部分工作交由机器来实现,能够极大的提高开发测试的效率。当研发完成代码修改并提交后,期望达到持续集成、持续交付的构建模式。



技术实现要素:

发明目的:针对以上问题,本发明提出一种面向电力行业研发测试流水线构建方法,提高开发测试过程的效率,实现信息化系统的敏捷交付、持续集成。

技术方案:为实现本发明的目的,本发明所采用的技术方案是:一种面向电力行业研发测试流水线构建方法,包括步骤:

(1)为流水线构建源码来源,从研发代码库拉取代码,配置源码git仓库地址、分支、账号、密码;

(2)maven工程的pom文件,构建打包方式为jar方式;

(3)使用gradle作为构建工具,考虑gradle的版本,选择执行的测试脚本;

(4)构建基于轮询机制的触发器,配置轮询周期为5min,即每5分钟进行一次源码检查,如果发现代码库中有代码更新,则开始进行流水线构建,并依次触发后面的工作流程;

(5)自动触发流程,包括代码检查编译、代码扫描、单元测试、功能测试、性能测试、安全测试、测试环境发布;

(6)手动触发流程,由代码质量管理人员配置手动发布到生产环境;

(7)提交邮件通知;

(8)构建后操作,测试报告覆盖,自动生成包括单元测试报告、功能测试报告、性能测试报告、功能测试报告。

进一步地,前期流水线构建阶段,进行持续集成环境准备,包括步骤:

(1)研发人员完成主要功能特性代码的编写;

(2)测试人员完成测试脚本的编写;

(3)质量管理人员和发布人员完成代码自动化构建和发布;

(4)通过开发测试流水线将上述三点内容连接起来,调试流水线功能。

进一步地,完成上述流水线持续集成建立的准备阶段后,进入迭代开发测试过程,包括步骤:

(1)研发人员向代码库上传回归的代码;

(2)代码库的webhook接收到事件提交请求,开发测试流水线接口轮询,检测到代码更新,执行构建脚本;

(3)开发测试流水线工具从代码库同步代码,执行自动化脚本,搭建测试环境,生成测试必要的元素;

(4)执行前期完成功能、性能、安全自动化测试脚本;

(5)进行测试环境的自动化发布;

(6)由质量管理人员发布到生产环境中。

进一步地,研发测试的工作流程包括:(1)研发人员编写代码;(2)进行代码编译;(3)单元测试;(4)提交代码到测试;(5)发布。

有益效果:本发明将测试流水线中的每一步通过构建工具执行命令,代替人工自动化的执行每一个阶段;提高了开发测试过程的效率,实现了信息化系统的敏捷交付、持续集成,从而把更多的精力放到核心的代码功能设计研发阶段。

附图说明

图1是研发测试流水线流程图。

具体实施方式

下面结合附图和实施例对本发明的技术方案作进一步的说明。

研发测试的工作流程一般为:(1)研发人员编写代码;(2)进行代码编译;(3)单元测试;(4)提交代码到测试,进行功能测试、集成测试、性能测试、安全测试等;(5)发布。其中,从代码编译到发布的过程为重复工作,可以通过构建的流水线方法,自动化实现上述重复步骤,从而把更多的精力放到核心的代码功能设计研发阶段。

从代码检查编译到测试环境发布均为自动执行,生产环境发布为手动执行,通过流水线的构建,能够迅速定位问题所在,提交回归研发,并再次进行研发测试流水线的构建。完成一次完整的流水线构建后,即可将代码发布到生产环境中。本发明将上述流水线中的每一步通过构建工具执行命令,代替人工自动化的执行每一个阶段。

如图1所示,本发明所述的面向电力行业研发测试流水线构建方法,包括步骤:

(1)为流水线构建源码来源,从研发代码库拉取代码,配置源码git仓库地址、分支、账号、密码;

(2)maven工程的pom文件,构建打包方式为jar方式;

(3)使用gradle作为构建工具,考虑gradle的版本,选择执行的测试脚本;

(4)构建基于轮询机制的触发器,配置轮询周期为5min,即每5分钟进行一次源码检查,如果发现代码库中有代码更新,则开始进行流水线构建,并依次触发后面的工作流程;

(5)自动触发流程,包括代码检查编译、代码扫描、单元测试、功能测试、性能测试、安全测试、测试环境发布;

(6)手动触发流程,主要由代码质量管理人员配置手动发布到生产环境;

(7)提交邮件通知;

(8)构建后操作,测试报告覆盖,自动生成包括单元测试报告、功能测试报告、性能测试报告、功能测试报告。

在实际工程应用中,前期流水线构建阶段,进行持续集成环境准备,包括:

(1)研发人员完成主要功能特性代码的编写;

(2)测试人员完成测试脚本的编写;

(3)质量管理人员和发布人员完成代码自动化构建和发布;

(4)通过开发测试流水线将上述三点内容连接起来,调试流水线功能。

在工程应用中,完成上述流水线持续集成建立的准备阶段后,即进入迭代开发测试过程,全过程实现无人值守,包括:

(1)研发人员向代码库上传回归的代码;

(2)代码库的webhook接收到事件提交请求,开发测试流水线接口轮询,检测到代码更新,执行构建脚本;

(3)开发测试流水线工具从代码库同步代码,执行自动化脚本,搭建测试环境,生成测试必要的元素;

(4)执行前期完成功能、性能、安全自动化测试脚本;

(5)进行测试环境的自动化发布;

(6)由质量管理人员发布到生产环境中。



技术特征:

技术总结
本发明公开了一种面向电力行业研发测试流水线构建方法,将研发测试工作的一般流程,通过构建的流水线方法,自动化实现,从而把更多的精力放到核心的代码功能设计研发阶段;从代码检查编译到测试环境发布均为自动执行,生产环境发布为手动执行,通过流水线的构建,能够迅速定位问题所在,提交回归研发,并再次进行研发测试流水线的构建;完成一次完整的流水线构建后,即可将代码发布到生产环境中。本发明将流水线中的每一步通过构建工具执行命令,代替人工自动化的执行每一个阶段;提高了开发测试过程的效率,实现了信息化系统的敏捷交付、持续集成,从而把更多的精力放到核心的代码功能设计研发阶段。

技术研发人员:曾纪钧;刘晔;龙震岳
受保护的技术使用者:广东电网有限责任公司信息中心
技术研发日:2019.04.12
技术公布日:2019.07.16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1