自动化测试脚本开发完成以后,希望可以把脚本放在公共的环境下提供一个入口供大家一起使用,目前最好的解决方案就是需要把代码部署在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)的更多相关文章

  1. Jenkins部署jmx脚本

      针对jenkins+jmeter做接口自动化,jmeter完成测试脚本录入和撰写,而jenkins负责持续集成和报告收集.那么从零实现jenkins可以从以下角度实现 首先需要安装jenkins ...

  2. 解决Jenkins用shell脚本部署后,Jenkins自动杀掉启衍生出来的守护进程

    Jenkins部署java项目遇到的问题: 1.Jenkins执行构建后,需要手动执行startup.sh,站点才能正常访问 产生原因: shell脚本发布时,会衍生进程,Jenkins默认会自动杀掉 ...

  3. jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)

    jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...

  4. gitlab+jenkins 持续部署自动化测试

    背景:为了减少测试部署时间和减少不必要的重复工作,采用持续集成的方式进行部署,当gitlab的release (测试)分支有代码变动时,自动拉取代码部署测试环境,并进行接口回归测试 优点:部署自动化, ...

  5. Jmeter+Ant+Jenkins接口自动化测试(一)_环境部署

    前言: 2017年最后一个月份,今天抽出时间把之前的一些记录分享出来,也为今年画上个简单的句号吧,无论好与坏,无论成功与失败,简单的记忆,不要留下点点空白. 特别提示: 知识是用来分享的,但是也要尊重 ...

  6. Jenkins部署Python项目实战

    一.背景 我们工作中常用Jenkins部署Java代码,因其灵活的插件特性,例如jdk,maven,ant等使得java项目编译后上线部署一气呵成,同样对于脚本语言类型如Python上线部署,利用Je ...

  7. Jenkins部署实战篇

    Jenkins部署实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.持续集成理论 1>.开发写代码的演变过程 1.1>.一个开发单打独斗,撸代码,开发网站,自由 ...

  8. Hadoop生态圈-离线方式部署Cloudera Manager5.15.1

    Hadoop生态圈-离线方式部署Cloudera Manager5.15.1 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 到目前位置,Cloudera Manager和CDH最新 ...

  9. Gitlab+Jenkins学习之路(六)之Jenkins部署、升级和备份

    一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集 ...

随机推荐

  1. Linux上的10个Touch命令实例

    Linux Touch 命令 Touch命令可以用来修改文件访问或修改的时间戳.实际上,它更常仅仅用于快速的创建一个空白文件. 这篇文章展示了一些非常简单和快速的实例,使用Touch命令来修改时间戳和 ...

  2. 选择排序<C#>

    目标:对数组(列表等任意有序容器)进行排序 方法:对列表进行遍历,选出最大的   之后将这个数储存起来,对剩下的数再选择最大的,之后再对剩下数做同样的操作 直至结束即可.   代码如下: public ...

  3. @RequestMapping、@ResponseBody和@RequestBody的使用

    使用SSM框架进行Web开发时,经常在Controller中遇到@RequestMapping.@ResponseBody和@RequestMapping注解. 1.@RequsetMapping注解 ...

  4. Windows10 VS2017 C++多线程传参和等待线程结束

    #include "pch.h" #include <iostream> #include <windows.h> using namespace std; ...

  5. 4--TestNG测试报告

    第一:自带测试报告(略) 第二:Reportng测试报告(略) 第三:ExtentReport--extentreports.com (1) pom.xml:不是总的pom,是文件夹下的pom < ...

  6. 访问mysql出现Access denied for user 'root'@'的解决方法

    1.关闭mysql的服务 方法一:我的电脑右键-管理-服务和应用程序-服务,找到mysql,右键关闭 方法二:cmd进入命令提示符,service mysqld stop(这个是网上的方法,我试了一下 ...

  7. 微信小程序 获取用户信息授权

    login.wxml界面 获取用户授权可以用微信提供的接口 wx.authorize, 但是获取用户信息的授权用这个接口不会弹出授权窗口 <button class="submit-b ...

  8. 关闭Azure虚拟机

    Press the Windows key, and then in the Start page, located at the bottom-left, click the Power butto ...

  9. ubuntu编译安装opencv

    简易安装opencv2: conda install --channel https://conda.anaconda.org/menpo opencv 或: sudo apt-get install ...

  10. Kafka如何彻底删除topic及数据

    前言:删除kafka topic及其数据,严格来说并不是很难的操作.但是,往往给kafka 使用者带来诸多问题.项目组之前接触过多个开发者,发现都会偶然出现无法彻底删除kafka的情况.本文总结多个删 ...