Jenkins持续集成的应用--基础
1.测试工程师为什么要掌握持续集成
一个程序员如果想发布一个产品,他需要编码、编译、测试,发布的过程。对于一个企业来说,如果也想发布一个产品的话,同样的也是需要上述的过程,区别在于企业要发布的产品的需求会很多,如果有一个程序员来完成整个的过程的话,需要花费大量的时间,导致产品的研发周期过长,错过市场良机。为了避免这样的问题出现,企业一般会招聘多个程序员来协同编码,最后再将所有的代码进行集成,而在集成时往往会发现很多bug,这些问题是在研发编码的时候就已经存在了,如果在集成时才发现问题的话,会导致开发者在集成阶段花费大量的时间寻找bug的原因,加上软件的复杂想,bug的根源很难定位,甚至会出现不得不调整底层架构的情况,那么在这样的情境下,持续集成的概念产生了,下面就介绍持续集成可以帮助我们来完成哪些事情,持续集成如何来应用?
2.持续集成的概念、流程和意义
持续集成的流程;1.开发将代码提交到主版本,测试工程师的任务是要验证代码合并之后的正确性;2.把代码拉去到本地;3.创建测试环境:编译(成为可执行程序)、打包、配置;4.测试:往往会选择一些比较核心的功能;
3.持续集成工具jenkins
关于Git、Jenkins的安装和配置,这里只做简单的描述,更详细的安装和配置的方法可以参考这几个链接:
4.jenkins工具的配置说明
说明:1.Github代码库:Jenkins拉取代码的来源;2.Git:向Github发出拉取代码的命令;3.Gradle:把拉取到本地的代码进行编译;4.Android:Gradle把代码编译完成之后会形成一个可执行文件(apk),此时就需要Android的环境来操作apk(比如通过adb命令向手机中安装apk)。
系统级的配置和JOB级配置的区别:系统级的配置是针对所有的JOB生效的,JOB级配置只针对自己本身才生效。
5.jenkins工具系统配置和Job配置
5.1,系统配置
方法:
1.如图1:常用的需要配置的选项;
2.如图2:配置Gradle;
3.如图3、4:jenkins上为了让有权限能访问Github需要做的配置;
4.如图5、6、7:在Github中获取口令;
5.点击图3中棕色框"Add",弹出图8,按图8所示完成操作。
6.同样的,如图10所示,也可以验证是否配置成功。
5.2,Job配置
如图11,新建一个任务,一般选择“创建一个自由风格的软件项目”;
如图12:JOB配置界面。下文会通过具体的项目展示如何配置;
6.jenkins手动持续集成实战
实例:如图13所示,使用Jenkins完成自动拉取代码、编译、打包、把包安装到模拟器、执行monkey测试。
步骤:1.如图14,在Github中复制源码的连接;
2.如图15,配置刚刚已经建立好的JOB,配置Git,粘贴图14中复制的连接到红色框中,点击“Add”;
3.如图16、17,添加github的账号和密码;
4.配置Gradle,如图18、19配置可以生成apk包;
5.图20、21,设置包保存的路径。
6.由于目前还没有执行过构建过程,所以还不清楚包保存的路径,需要构建一次,然后找到包保存的路径。
方法:6.1.在图19的基础上保存设置后来到图22的界面;6.2.图22中点击“立即构建”,从代码库拉取代码、编译,生成apk包;6.3.如图23,项目正在构建;
6.4.图23上点击,来到图24;
6.5.图24上点击,来到图25,可以看到构建过程中的命令执行情况(为了确保在Jenkins上Gradle成功,需要先手动Gradle成功);
6.6.如图26-1,构建已完成,可以通过图26-2中“Building in workspace”中找到包保存的路径的前半部分;
6.7.如图27,在命令行中找到包保存路径;
6.8.如图28,把路径复制到当前的Job设置中;
7.配置monkey,如图29、30,增加monkey构建,;
8.此时点击“立即构建”,如图31,就完成了整个的编译、打包、安装、执行monkey测试的过程;
7.jenkins自动化持续集成实战
在实际的工作过程中,我们不希望每次的构建都是通过手动来完成,希望构建是自动来完成的,那么如何让构建过程自动的进行呢?需要进行一定的配置。方法:
1.点击工程JOB中的“配置”;
2.如图33,“构建触发器”中勾选“Build periodically”,在“日程表”中填写“构建周期”;
3.点击左侧“?”,可以查看构建规则,如图34;
4.如图35,日程表中设置“每2分钟构建一次”,点击“Apply”、保存,返回到工程界面;
5.如图36,返回到工程界面后,自动构建已经开始了;
Jenkins持续集成的应用--基础的更多相关文章
- 【转】jenkins持续集成配置
搭建jenkins持续集成服务器 1.jenkins简介 Jenkins,前身为Hudson,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,包括: 持续的软件版本发布/测试项目. 监控 ...
- Jenkins持续集成
Jenkins持续集成 & .NET 最近受累于测试环境每次发布都很麻烦,而且我们有多个测试环境,因此专门抽时间做了Jenkins的配置和研究. 折腾了两天终于绿灯以后,先来个截图,Blu ...
- CentOS 7 部署Gitlab+Jenkins持续集成(CI)环境
持续集成概述及运行流程 : 持续集成概述 :持续集成(Continuous integration)持续集成是指开发者在代码的开发过程中 ,可以频繁的将代码部署集成到主干,并进行自动化测试 开发→代 ...
- Python接口测试实战5(上) - Git及Jenkins持续集成
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- jenkins持续集成工作原理、功能、部署方式等介绍
超详细的jenkins持续集成工作原理.功能.部署方式等介绍 原创 波波说运维 2019-08-29 00:01:00 概述 今天简单整理了一下jenkins的一些概念性内容,归纳如下: 1.概念 j ...
- Jenkins持续集成企业实战
阅读目录: Jenkins持续集成企业实战1.1 目前主流网站部署的流程1.2 Jenkins持续集成简介1.3 Jenkins持续集成组件1.4 Jenkins平台安装部署1.5 Jenkins相关 ...
- 基于Kubernetes/K8S构建Jenkins持续集成平台(上)-2
基于Kubernetes/K8S构建Jenkins持续集成平台(上)-2 Kubernetes实现Master-Slave分布式构建方案 传统Jenkins的Master-Slave方案的缺陷 Mas ...
- python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法?
python_java_selenium_ jenkins持续集成Firfox_chrome浏览器不显示的解决方法: 原因:因为jenkins是用windows installer 安装成 windo ...
- jenkins持续集成源码管理选项为None,构建失败找不到git.exe解决办法
我的jenkins版本为Jenkins ver. 2.19.1 1.源码管理选项只有None的解决办法: 在插件管理中心,搜索对应的源码管理插件这里以git为例,搜索git plugin点击右下角的安 ...
随机推荐
- css横屏问题的设置
<link rel="stylesheet" media="all and (orientation:portrait)" href="css/ ...
- Dynamics CRM 客户端程序开发:自定义系统标准按钮的可用性
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复125或者20140414可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 一般是新建一个解决方案用于客制化 ...
- MD5 加密工具类MD5Util
我们在使用MD5 在线加密的时候,会发现下面情况,大小写的区别就不说啦,那么16位和32位有啥区别呢,其实16 位实际上是从 32 位字符串中,取中间的第 9 位到第 24 位的部分,就是str.su ...
- UML类图和用例图
软件体系结构的多视图 kruchten提出了软件体系结构的4+1视图模型,其中用例图位于中心位置(4+1视图中的1). 逻辑视图 一种静态建模视图 进程视图 一种并发进程或任务视图 开发视 ...
- ubuntu 安装elasticsearch
elasticsearch简介 环境准备 elasticsearch:7.0.0 kibana :7.0.0 安装 1.新创建普通用户 elasticsearch不能用root账号 ...
- linux 安装PostgreSQL12
一.安装步骤 1.设置保存安装包的目录 # cd /usr/local/src 2.开始下载源包 # wget https://ftp.postgresql.org/pub/source/v12.1/ ...
- 面试必备的13道可以举一反三的Vue面试题
Vue框架部分我们会涉及一些高频且有一定探讨价值的面试题,我们不会涉及一些非常初级的在官方文档就能查看的纯记忆性质的面试题,比如: * vue常用的修饰符? * vue-cli 工程常用的 n ...
- Python的运用基础3
1. 简述执行Python程序的两种方式以及他们的优缺点? 交互式(jupyter) 优点:运行一句执行一句 缺点:关闭即消失 ==例如== win10系统cmd窗口 命令行式(Pycharm) 优点 ...
- (转)新建maven项目时报错Error:Maven Resources Compiler: Maven project configuration required for module 'XX'解决方法
转载地址:https://blog.csdn.net/qq784515681/article/details/85070195 在新建maven项目时,Problems中报错: Error:Maven ...
- 自己整理的模拟爬虫的user-agent
自己经常用的一些爬虫用的user-agent头部 This XML file does not appear to have any style information associated with ...