持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。通过持续集成,可以解放重复的日常打包、部署、发布动作~可以设定定时构建部署,或者某些条件触发构建部署~而且能做到发布过程中,做一系列自动化检察工作~
一、持续集成工具:
常用的构建工具如下。
Jenkins
Travis
Codeship
Strider
Jenkins 和 Strider 是开源软件,Travis 和 Codeship 对于开源项目可以免费使用。它们都会将构建和测试,在一次运行中执行完成。
每一位测试攻城狮身边,都有一位私人管家,他的名字叫Jenkins,这位面带微笑的小老头,就像蝙蝠侠身边的阿尔弗雷德一样,不断给我们提供武器装备……今天我将带你探访Jenkins~
二、为什么首选Jenkins?
敏捷测试已成为行业发展趋势,其优势在于快速迭代,所以在整个过程中,技术团队在持续推出各类增量化功能,代码错误也会不期而至,并导致软件无法正常使用,软件测试不能成为短板,软件测试工作更需要快速迭代,所以Jenkins也就成了自动化测试持续集成的首选工具。
三、什么是Jenkins?
Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,可以用来打包、发布、代码管理、单元测试、代码质量管理等,需要使用相应的插件来实现不同功能。企业可以针对自己的业务来搭建符合自己业务的Jenkins平台。
Jenkins提供了软件开发的持续集成服务。它运行在Servlet容器中(例如Apache Tomcat)。
它支持软件配置管理(SCM)工具(包括AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase和RTC),可以执行基于Apache Ant和Apache Maven的项目,以及任意的Shell脚本和Windows批处理命令。
Jenkins的主要开发者是川口耕介。Jenkins是在MIT许可证下发布的自由软件。可以通过各种手段触发构建。例如提交给版本控制系统时被触发,也可以通过类似Cron的机制调度,也可以在其他的构建已经完成时,还可以通过一个特定的URL进行请求。
四、功能与优点
Jenkins是基于java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:
持续的软件版本发布/测试项目。
监控外部调用执行的工作。
跟其他持续集成相比,它的主要优点有:
开源,即免费。
支持多种平台(windows、linux、os x都支持)。
安装、配置简单。
Web可视化管理界面,并且有丰富的tips帮助信息。
五、集成步骤
1. Jdk安装
1)到JDK官网下载相关的JDK版本,本文以jdk-7u25-windows-i586为例来做简单介绍。下载JDK解压到D盘,双击JDK,然后根据提示点击“下一步”点击安装。
2)JAVA安装成功后运行前需配置环境变量Path和ClassPath,设置方法如下:
右键点击我的电脑-属性-高级-环境变量
3)环境变量配置好之后,验证JAVA安装是否成功。点击开始-->运行-->cmd,输入JAVA -version。如果显示了Java的版本号则表示环境变量已经配置成功。
2. 安装eclipse
1)官网下载安装eclipse安装包
2)解压进入目录双击eclipse.exe即可使用
3)关闭欢迎页
4)检查默认加载环境:windows--preferences---java--installed jres。如果是安装在C盘的1.7则没问题
3. Tomact安装
1)到Apache官网下载相关的Tomcat版本,本文以apache-tomcat-7.0.39为例来做简单介绍。下载Tomcat解压到D盘
2)解压site文件,复制下图中的两个文件夹复制到eclipse所在目录下的dropins文件夹中(安装eclipse的SVN插件)
3)进入apache对应文件的bin目录,点击下图中的.Bat文件运行
4. Jenkins安装
1)Jenkins安装包下载官网:https://jenkins.io/
2)复制jenkins(不需要解压)文件放到apache中的webapps文件夹下
3)浏览器中打开http://172.31.4.55:8080/jenkins/(IP地址为安装Jenkins的电脑IP)
5. SVN上传代码
1)安装svn服务器,如果有管理代码库的svn则跳过此步
2)新建仓库,添加用户,如果此项内容已建立则跳过此步。
3)Window—show view—选择other-搜索svn—点击svn资源库,点击ok
4)在空白处右键,选择新建,选择资源库位置,粘贴svn中仓库url,粘贴后点击finish,账户填写svn库中加的用户名和密码,点击ok后出现下图中的链接
5)右键包名,选择team,选择第二个有share的选项,添加成功后此处的图标上有*号或者问号
6)右键包名,选择提交,然后填写提交的日志,保存后图标如上图所示,有小桶标记
6. 创建节点
1)进入Jenkins web页,点击系统管理
2)点击管理节点
3)新建节点
4)添加节点名称,勾选第一个,点击OK
5)填写远程工作目录,本地建一个文件夹,然后将路径添加到此处,添加标签,便于自己记忆,点击保存
6)点击小老头,刷新界面
7)点击新建,填写item名称(项目名称),选择第一个,点击OK
8)描述下面勾选最后一个,源码管理选择使用的代码管理工具,第四个是svn,仓库地址是项目的url
9)日程表填写5个*号,每个*号之间用空格间隔,添加构建步骤选第四个
10)点击高级后添加这两项
11)添加构建后步骤,选图中的选项,点击保存
7. 节点在线
1)点击构建的节点,然后复制第二张图的url,在cmd中运行
2)出来一个协议,同意点击运行,出来一个Jenkins小老头的图标
8.立即构建
1)点击项目名称
2)点击立即构建,开始运行脚本
到此,我们的一个持续集成的一个项目就已经搭建好了,现在一旦我们对代码修改进行提交,然后Jenkins就会获取最新的代码然后按照我们上面配置的命令进行构建和部署。
六、总结,Jenkins 使用价值
减少发布工作人员的大量日常工作量,大大提高项目的发布效率。
不容易出错,降低人工发布带来的风险。
可 24 小时随时发布。
方便紧急修复或回滚操作 Rollback。
方便对发布流程进行控制、标准化。
方便发布统计、历史版本可追溯。
下面有我近几年的收集和整理,整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。
对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你
关注微信公众号【程序员二黑】即可领取Python自动化测试超硬核资源啦