Jenkins 部署自动化测试脚本(15)
自动化测试脚本开发完成以后,希望可以把脚本放在公共的环境下提供一个入口供大家一起使用,目前最好的解决方案就是需要把代码部署在Jenkins上,下面看下如何在Jenkins配合自动化测试任务;
1.首先我们需要搭建Jenkins的运行环境,请参考Jenkins入门-环境搭建(1);
2.环境搭建完成最重要的是安装插件,插件的安装需要根据自己实际的使用情况安装,没有必要大而全的安装,这样很容易引入一些没有必要的麻烦,比如说插件的漏洞,会让你服务器遭受到不必要的攻击;
目前我的代码托管在公司内部的gitlab,首先我需要在Jenkins安装Git plugin/Git client/GIT server Plugin 插件,这里主要我们想通过jenkins自动从gitlab上获取代码,插件安装称成功以后重新启动Jenkins;

3.Jenkins 服务器安装GIT工具
- Linux 安装GIT
# 安装git
yum install git -y # 校验安装是否成功
git --version
- Window安装GIT
# 下载地址
https://git-scm.com/download/win
下载完成一步一步的进行安装直到完成,安装过程中需要命令添加环境变量,执行git --version 返回结果安装成功

4.Jenkins 配置全局工具
- 系统管理 --> 全局工具配置 --> Git

- Linux 查询git命令的位置
[root@iZ25vrq5z1zZ plugins]# which git
/usr/bin/git
5.创建Jenkins任务,目前我们的自动化主要采用Python来开发,所以我这边只要创建一个《构建一个自由风格的软件项目》,如果是java开发的项目可以创建《构建一个maven项目》,其实这里主要就是个模板的问题;

6. 配置任务
配置Jenkins任务主要配置两点,第一代码管理,第二是构建
- 代码管理

代码拉取的权限,代码拉取的权限配置方式很多,我们这里只要通过gitlab的账号和密码即可,这样我们就可以自动拉取代码

- 构建
构建我们可以理解为,执行代码的方式即可,如果Linux 下部署构建命令执行shell脚本,如果是win部署,我们需要构建命令bat脚本;

注意:
如果代码下载完成后,我们可以通过pwd的命令查询下当前位置,然后通过相对路径找到代码路径;
目前我使用pytest 框架来构建自动化测试,所以我这边只需要shell添加pytest命令就可以构建执行;

Jenkins 部署自动化测试脚本(15)的更多相关文章
- Jenkins部署jmx脚本
针对jenkins+jmeter做接口自动化,jmeter完成测试脚本录入和撰写,而jenkins负责持续集成和报告收集.那么从零实现jenkins可以从以下角度实现 首先需要安装jenkins ...
- 解决Jenkins用shell脚本部署后,Jenkins自动杀掉启衍生出来的守护进程
Jenkins部署java项目遇到的问题: 1.Jenkins执行构建后,需要手动执行startup.sh,站点才能正常访问 产生原因: shell脚本发布时,会衍生进程,Jenkins默认会自动杀掉 ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
- gitlab+jenkins 持续部署自动化测试
背景:为了减少测试部署时间和减少不必要的重复工作,采用持续集成的方式进行部署,当gitlab的release (测试)分支有代码变动时,自动拉取代码部署测试环境,并进行接口回归测试 优点:部署自动化, ...
- Jmeter+Ant+Jenkins接口自动化测试(一)_环境部署
前言: 2017年最后一个月份,今天抽出时间把之前的一些记录分享出来,也为今年画上个简单的句号吧,无论好与坏,无论成功与失败,简单的记忆,不要留下点点空白. 特别提示: 知识是用来分享的,但是也要尊重 ...
- Jenkins部署Python项目实战
一.背景 我们工作中常用Jenkins部署Java代码,因其灵活的插件特性,例如jdk,maven,ant等使得java项目编译后上线部署一气呵成,同样对于脚本语言类型如Python上线部署,利用Je ...
- Jenkins部署实战篇
Jenkins部署实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.持续集成理论 1>.开发写代码的演变过程 1.1>.一个开发单打独斗,撸代码,开发网站,自由 ...
- Hadoop生态圈-离线方式部署Cloudera Manager5.15.1
Hadoop生态圈-离线方式部署Cloudera Manager5.15.1 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 到目前位置,Cloudera Manager和CDH最新 ...
- Gitlab+Jenkins学习之路(六)之Jenkins部署、升级和备份
一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集 ...
随机推荐
- java this关键字的使用
this关键字 this关键字只能在方法内部使用,表示对"调用方法的那个对象"的引用. this的三个用法: 1.调用本类中的其他方法 如果在方法 ...
- web开发中 代码解决部分IE兼容问题
首先是自己遇到问题: 一套系统,以前的开发asp旧+c#新后台管理扩展.完善后,在2013年前基本无问题,很是畅顺. 其中.到升级了浏览器后.例如ie9以后,则问题出现了. 如图: 这是一个js的 ...
- Asp.Net Core通过HttpStatusCode状态处理响应结果
在我的一个Asp.Net Core 2.1 的项目中,我们需要通过获得服务器返回的状态,去实现不用的操作,经过多方资料查询和实践,个人总结一种方法 一.修改控制器 在要返回值的控制器Action中,R ...
- 从n个数中随机选出k个数,并判断和是不是素数
洛谷p1036 #include<iostream> #include<math.h> using namespace std; ],n,k;//依照题目所设 bool isp ...
- sql嵌套查询
嵌套查询的意思是,一个查询语句(select-from-where)查询语句块可以嵌套在另外一个查询块的where子句中,称为嵌套查询.其中外层查询也称为父查询,主查询.内层查询也称子查询,从查询. ...
- web 自定义标签
Web Components 标准非常重要的一个特性是,它使开发者能够将HTML页面的功能封装为 custom elements(自定义标签).而自定义标签的好处,就是在大型web开发的时候,可以封装 ...
- type() 和 isinstance()区别
a=111 # type() 返回数据类型 In: type(a) Out: int In: print(type(a)) Out: <class 'int'> # isinstance ...
- eclipse使用技巧心得分享
eclipse使用技巧心得分享 习惯了eclipse开发java程序,公司最近的项目都是idea开发的,同时android studio也是idea原型开发的,在学android开发,所以脱离ec ...
- AutomaticReferenceCounting.html#runtime-support
https://clang.llvm.org/docs/AutomaticReferenceCounting.html#runtime-support Runtime support This sec ...
- Django 1.9 + celery + django-celry 实现定时任务
celery可以进行任务异步处理,celery还有一种Celery的常用模式便是执行定期任务. 执行定期任务时, Celery会通过celerybeat进程来完成. Celerybeat会保持运行, ...