git连接jenkins_今天放个大招,带你手把手搭建 Jenkins 的分布式构建

3e185b58c8078065f4e059de60954490.gif

今天冬至,小编也没什么可表示的,所以今天 文末福利 是饺子哦~

UI 自动化测试代码写完了以后,会放到 Jenkins 这样的持续集成工具上去构建。

如果 Jenkins 平台是搭建在服务器上,会面临 2 个问题:

  • 第一个问题是 UI 自动化测试需要渲染界面,需要消耗大量的 CPU 和内存资源,如果服务器上还有其他的服务,可能会造成卡顿或者宕机这样的情况。

  • 第二个问题是 Jenkins 平台上除了这个项目,还会有其他项目需要构建,如果同一时间构建大量的任务同样会造成多个任务抢占资源的情况。

Jenkins 提供了主从模式(master-slave)解决这个问题。

1381da86a229f2c05948e56c82c909ec.png在服务器的 Jenkins 上配置项目1381da86a229f2c05948e56c82c909ec.png1 提交代码

首先,把自动化测试的代码传到 GitHub 这样的平台上。

把本地代码执行以下操作:

git add .git commit -m "提交自动化测试"git push

在 GitHub 上可以看到项目代码更新了,复制 GitHub 仓库链接地址。

5f6dcfa62745abb107bed33667745ab8.png

2 创建 Jenkins 项目

输入 jenkins 服务的 URL 地址,进入 Jenkins 页面。

比如你们公司的 Jenkins 为 http://118.23.238.138:8080/。先点击 Manage Jenkins --> Manage Plugin 安装 Git 插件。

7b1abc90439ca081b6defd7e81ce3688.png

安装成功以后,进入 Jenkins 面板,点击 New Item 创建一个项目:

6f512b57c037ce488a1093da5d954a64.png

在 Item 的配置里选择 Git 管理源码。如果之前没有安装 Git 插件,这里不会有 Git 选项。

填入自动化代码的仓库地址,用户名密码和关联分支。第一次没有在 jenkins 里配置账号的可以点击 add 添加。

d9f109ebb3d6e8d1d0838b22c17db1cb.png

3 添加构建步骤

点击 add build step, 选择执行脚本的方式,windows 和 unix 系是不一样的。这里一定要注意,是运行任务的机器,这不是由服务器的系统决定的。 

配置好了以后,点击立即构建,此时构建操作应该会报错,因为你的服务器还没有安装执行脚本需要的环境,比如浏览器,python 语言环境,selenium 环境等等。

如果你需要服务器运行脚本,这些环境是必须要装的。但是如果是使用主从模式,只需要客户机安装好环境就可以了。

fdce9862b2a82e28af71c7fa1d3740ca.png

4 添加客户机节点(Node)

在服务器上注册你需要运行脚本的客户机的名称,点击 manage jenkins -> manage node and cloud -> New Node 配置新节点。

344df81b63563650829b29007dc8872e.png

需要注意 Launch method 一定要开启 jenkins 的远程连接端口,否则客户机无法连接上服务器。

这种连接用的是 JNLP4 协议, 这种协议是在 WebSocket + TLS 的基础上封装而成的长连接协议。可以在 jenkins 的安全设置面板中开启。

0ff7cf04bfd34e86b61eb9f35db1ba85.png

5连接客户机

在 Node 管理界面点击刚刚添加的客户机,会介绍两种连接方式,直接按提示操作就可以了。

之后客户机和服务器就是通过这种方式传递数据。服务器不需要安装运行脚本需要的环境,这些环境都由客户机提供并执行。客户机并不需要安装 jenkin。

0e03fb8468e39d701b722cb3d70f0a70.png

6正常构建

连接成功以后就可以正常构建啦。

db4cd38b8f1c88c6fc1324b022741f9a.png

查看测试报告:

63e351a09e9f3ce8afd4bcb50dde4512.png

文末福利

冬至大如年,人间小团圆。

听说冬至吃饺子,就能不冻耳朵哦

80dfa8ae4c81190e52ac0deceecbdc3f.png

今晚10点前

评论区留言点赞数第一的小伙伴

今晚就能收到来自柠檬班的专属福利

一碗热气腾腾的大水饺哦~

aa73dd53d796fb1a611367887fde8fc8.pngbc1837f71d4a57fc1d2bde0179799b87.pngaa73dd53d796fb1a611367887fde8fc8.png往期推荐...

1.测试大佬的压箱绝技:教你app 自动化测试如何实现多设备并发

2.在,年终总结可以借我抄一下吗?

3.从自考大专到出走腾讯,他的经历值得每个测试人借鉴

4.web 自动化测试框架 TestCafe :听说用过的人都爱上了它

5.Web 自动化神器 TestCafe——元素定位篇

6.从找漏洞到登录网站后台,一次简单的手动注入漏洞挖掘实战

7.你知道吗?webservice的接口做自动化,其实很简单!

8.怎么给测试开发框架 FastAPI 编个接口?

2054db0fdd2cce89c4ce7e8f033ba6d2.gif


版权声明:本文为weixin_39695954原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。