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

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

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

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

  • 第一个问题是 UI 自动化测试需要渲染界面,需要消耗大量的 CPU 和内存资源,如果服务器上还有其他的服务,可能会造成卡顿或者宕机这样的情况。
  • 第二个问题是 Jenkins 平台上除了这个项目,还会有其他项目需要构建,如果同一时间构建大量的任务同样会造成多个任务抢占资源的情况。
  • Jenkins 提供了主从模式(master-slave) 解决这个问题。

    在服务器的 Jenkins 上配置项目

    提交代码

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

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

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

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

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

    创建 Jenkins 项目

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

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

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

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

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

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

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

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

    添加构建步骤

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

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

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

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

    添加客户机节点(Node)

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

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

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

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

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

    连接客户机

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

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

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

    正常构建

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

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

    查看测试报告:

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

    文末福利

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

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

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

    本文作者:柠檬班软件测试(lemonban)——专注于最新最前沿的软件测试技术,解决你的测试技术烦恼,对软件测试感兴趣的朋友赶快关注我们吧!

    来源:柠檬班软件测试

    声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

    上一篇 2020年11月15日
    下一篇 2020年11月15日

    相关推荐