CI和自动化测试的结合(jenkins的搭建和使用)
CI持续集成是一种思想,具体实现是通过jenkins持续集成工具去实现的。
Jenkins的安装和配置(war包启动)
安装jenkins的方式有两种:
- 方式一:通过下载安装包安装,jenkins.msi,双击运行,下一步,下一步......
- 方式二:下载jenkins.war包。
这里选择jenkins.war包的形式。
操作步骤:
下载jenkins.war包并运行
下载地址:http://mirrors.jenkins-ci.org/
打开链接后,表格有war列,Releases行是短期更新包,LTS Releases是长期更新包。
选择Releases下载即可。

下载完成的jenkins.war:

运行war包的方式有两种:
1.将war放到tomcat的webapp目录下,server.xml里面可以修改端口号
2.打开cmd,执行命令:java -jar [jenkin.war所在路径]

启动成功的标志:

在浏览器输入localhost:8080,输入密码(密码位置如下图所示会告诉你)


输入密码,点击继续;此时会提示你安装插件,点击安装就会自动去安装;安装要等几分钟,如果有失败比较多的话,可以点重试,否则可以直接点继续,后续可以进入插件中心手动安装。
创建管理员账号

登录jenkins,jenkins系统管理界面如下图所示,如果有可更新的版本可以点击download。

允许新用户注册设置:系统管理->全局安全设置->允许用户注册


安装插件:系统管理->插件管理->安装所需插件


这里用到的几个插件:
Email Extension
Git
GitHub
Subversion
配置git.exe路径:系统设置->全局

UI自动化如何和CI结合
首先需要将自己的工程代码上传到git仓库上


出现401错误:

在github中,右上角账号 -> settings -> Developer settings -> Personal access tokens -> Generate new token -> 选择下图中的权限 -> 点击Generate token -> 复制token -> 粘贴到pycharm中Token栏位 -> 点击Test,提示success


Git配置:
安装好git后,在打开cmd或终端中使用下面的命令设置git自己的名字和电子邮箱。
因为Git是分布式版本控制系统,所以每个机器都必须自报家门,邮箱地址和你的名字。
git config --global user.email "291151689@qq.com"
git config --global user.name "itcaituotuo"

提交代码到GitHub:

提示success,打开GitHub,可以查看到提交的代码:

修改代码重新提交:



jenkins创建job,拉取GitHub上面的代码,构建项目,邮件发送。
创建Item -> 任务名称 -> 自由风格的软件项目 -> 点击确认

配置任务:

点击添加,输入用户名和密码:

返回到首页面,找到新建的项目,点击运行,拉取代码:

将代码拉取到jenkins所在的服务器(这里是windows本地电脑)

配置项目:


运行程序:


定时构建:
- 0 8 * * * 每天早上8点构建
- H/5 * * * * 每隔5分钟构建一次
- H H/2 * * * 每隔2个小时构建一次



其他工程构建后触发:

邮件发送:
配置邮箱

获取授权码:
配置任务,接收邮箱:

CI和自动化测试的结合(jenkins的搭建和使用)的更多相关文章
- Jenkins+Gitlab搭建持续集成(CI)环境
利用Jenkins+Gitlab搭建持续集成(CI)环境 Permalink: 2013-09-08 22:04:00 by hyhx2008in intern tags: jenkins gitla ...
- Git Hooks、GitLab CI持续集成以及使用Jenkins实现自动化任务
Git Hooks.GitLab CI持续集成以及使用Jenkins实现自动化任务 前言 在一个共享项目(或者说多人协同开发的项目)的开发过程中,为有效确保团队成员编码风格的统一,确保部署方式的统一, ...
- 基于 Jenkins 快速搭建持续集成环境--转
源地址:http://www.ibm.com/developerworks/cn/java/j-lo-jenkins/ 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础 ...
- Jenkins 快速搭建持续集成环境
持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域 ...
- windows系统下jenkins环境搭建与基本使用
一. windows 系统下搭建jenkins环境 1.1 jenkins环境搭建和构建job流程图 1.2 安装jdk JDK下载地址: http://www.oracle.com/technet ...
- Jenkins环境搭建(7)-集成钉钉消息推送
在去年的时候,搭建了一套Jenkins环境,基本功能已实现,可以通过如下地址查阅. Jenkins环境搭建(1)-下载与安装 Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动 ...
- 基于 Jenkins 快速搭建持续集成环境
什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火 ...
- Jenkins快速搭建持续集成
基于Jenkins快速搭建持续集成环境 Jenkins+tortoisesvn+MSBuild做到持续集成 附Jenkins的使用:http://www.infoq.com/cn/articles/M ...
- 物联网架构成长之路(29)-Jenkins环境搭建
0. 说明 哈哈,前面中间插入了一篇Eclipse增加Git插件,在此之前真的没有用过GIT. 1. 运行Jenkins 这里为了方便,还是用Docker方式安装,由于这个是标准的war报,不对Doc ...
- 基于Centos搭建Jenkins 环境搭建
系统要求: CentOS 7.2 64 位操作系统 安装 Jenkins Jenkins 简介 Jenkins 是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提 ...
随机推荐
- 编译原理LR分析
LR(0)分析存在问题及解决办法 当LR(0)含有互相冲突的项目时,则需要向前展 望符号串,检查下一个输入符号的状态 例 项目集I={X→α· bβ,A→α·,B→α· } 当面临输入符号b时,应该选 ...
- C# EnumWindows示例代码
代码开箱即用,唯一需要处理的就是要提供一个进程的pid. using System; using System.Collections.Generic; using System.Linq; usin ...
- TCP Server and Client Demo
server.go package main import ( "bufio" "fmt" "io" "net" &qu ...
- Long和int比较用==还是用equals
应该用==,因为equels会先比较类型,这样值一样的不同类型的数字就直接返回false啦.看源码吧. public boolean equals(Object obj) { System.out.p ...
- 别再低效筛选数据了!试试pandas query函数
数据过滤在数据分析过程中具有极其重要的地位,因为在真实世界的数据集中,往往存在重复.缺失或异常的数据.pandas提供的数据过滤功能可以帮助我们轻松地识别和处理这些问题数据,从而确保数据的质量和准确性 ...
- sentinel 持久化
1. 概述 在前面的关于Sentinel的使用中,可以发现,Sentinel-dashboard配置的规则,在我们的微服务以及控制台重启的时候就清空了,因为他是基于内存的. 所以我们有必要将规则配置进 ...
- php编写日历类
<?php /** * 日历类 * Class Calendar * @author fengzi * @date 2022-05-05 15:42 */ class Calendar{ pro ...
- 『Java 语法基础』面向对象有哪些特性
面向对象编程(OOP) 是一个将现实世界抽象为一系列对象的编程范式,这些对象通过消息传递机制来互相交流和协作. OOP 的主要特性包括四个基本概念:封装(Encapsulation).继承(Inher ...
- iview 动态表单验证 FormItem prop rules v-show 动态表单校验
iview 动态表单验证 FormItem prop rules v-show 重点1 用v-show 控制显示隐藏 重点2 prop 指定字段 重点3 :rules 动态指定规则 <div v ...
- koa 放置 前台打包dist 目录
const Koa = require('koa'); const app = new Koa() //public是指的放置前端静态资源的文件夹名称 app.use(require('koa-sta ...