[发明专利]一种持续集成自动化测试方法在审
申请号: | 201710320165.0 | 申请日: | 2017-05-09 |
公开(公告)号: | CN108874650A | 公开(公告)日: | 2018-11-23 |
发明(设计)人: | 黄周武;罗嵩 | 申请(专利权)人: | 上海秦苍信息科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 上海光华专利事务所(普通合伙) 31219 | 代理人: | 徐秋平 |
地址: | 200127 上海市浦东新*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 测试代码 自动化测试 触发 测试通过 测试系统 测试运行 插件生成 代码编译 代码更新 代码提交 环境部署 真实环境 资源消耗 自动部署 主分支 插件 上传 测试 合并 检测 创建 部署 保证 开发 | ||
1.一种持续集成自动化测试方法,其特征在于,包括:
在代码管理工具gitlab中创建项目,并在所述项目中添加.gitlab-ci.yml文件,其中,所述gitlab安装有gitlab CI插件;
在所述.gitlab-ci.yml文件中定义持续集成、持续部署的步骤,并在所述.gitlab-ci.yml文件中加入编写的测试代码项目,其中,所述测试代码项目用于检测是否有代码更新并合并到代码主分支,若是,则触发所述gitlab CI插件生成测试代码的容器镜像,并将所述容器镜像上传至所述gitlab。
2.根据权利要求1所述的持续集成自动化测试方法,其特征在于,还包括:在所述.gitlab-ci.yml文件中加入编写的测试环境项目,所述测试环境项目用于根据业务需求创建相应的容器镜像。
3.根据权利要求2所述的持续集成自动化测试方法,其特征在于,还包括:利用docker技术编排服务。
4.根据权利要求3所述的持续集成自动化测试方法,其特征在于,对于功能点单一的测试,将所有服务编排至一个docker-compose.yml文件中;对于功能点不单一的测试,将所有服务分组。
5.根据权利要求4所述的持续集成自动化测试方法,其特征在于,所述分组包括:数据卷容器服务、公共服务、及测试相关服务中的一种或多种组合;其中,
所述数据卷容器服务,用于存放数据库数据并保存变更的数据;
所述公共服务,用于根据需求制定对应的启动策略;
所述测试相关服务,用于在测试被触发时启动与功能点测试对应的服务,并在测试完成之后回收资源。
6.根据权利要求5所述的持续集成自动化测试方法,其特征在于,所述数据卷容器服务包括若干个服务共享、和/或容器内的数据定时备份。
7.根据权利要求1至6中任一所述的持续集成自动化测试方法,其特征在于,所述持续集成、持续部署的步骤包括:
步骤1)静态检查项目代码;
步骤2)编译所述项目代码,并生成jar包;
步骤3)生成所述项目的容器镜像,并将所述容器镜像上传至所述gitlab;
步骤4)测试所述项目代码;
步骤5)将通过测试的项目代码打成jar包并发布;
步骤6)完成部署。
8.根据权利要求7所述的持续集成自动化测试方法,其特征在于,所述gitlab CI插件被触发时:
所述gitlab CI插件解析所述.gitlab-ci.yml文件中定义的每个步骤的任务,并挑选相应的gitlab-runner来准备执行这些任务;
所述gitlab-runner启动并执行相应的任务,完成后把结果和主进程控制权交还给所述gitlab CI插件。
9.根据权利要求8所述的持续集成自动化测试方法,其特征在于,所述gitlab-runner准备执行这些任务包括:根据服务编排文件和脚本,将所有服务部署至云端,以供利用所述云端的动态伸缩技术,根据需要来扩充/缩减节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海秦苍信息科技有限公司,未经上海秦苍信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710320165.0/1.html,转载请声明来源钻瓜专利网。