前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Jenkins持续集成「配置Slave」

Jenkins持续集成「配置Slave」

作者头像
清菡
发布2020-12-02 15:36:37
1.5K0
发布2020-12-02 15:36:37
举报
文章被收录于专栏:清菡软件测试清菡软件测试

问题

1.做自动化测试不是把框架和测试用例实现了就没有然后了。写完的目的是运行到项目上去,这个项目上,怎么来运用啊?

我做这个的目的就是回归和冒烟。假设现在要做回归,回归根据开发转测试版本的情况。开发每天至少要给我们转一个测试版本,那我不可能每一个版本都去做回归。如果用例比较多,要运行几个小时,那就最好是放在晚上运行。回归这个工作可以不用利用工作时间来做。

代码写好后测试报告应该是发到测试人员和测试经理的邮箱,测试报告的结果代表测试人员的成果。晚上几个小时运行完成,第二天早上拿到这个测试报告先看下这个测试报告的结果是什么,把失败的都挑出来,看下为什么失败了,是bug就提到项目bug管理平台上。如果不是bug,就赶紧把自己的这条用例单独拎取出来调试。

2.尽早把用例放在jenkins平台上,还是用例完成的差不多了再放在jenkins平台上?

持续集成:一是持续,二是集成。

一个团队中,研发一个软件,每个开发只负责一部分,只有把每个人的一部分集成到一起才代表一个整体。所以这是个持续集成的过程。

早期就开始集成,这样就早点解决问题,改进自己的方法,减少问题的发生。这样等全部集成好了,会发现就没那么多问题了,前期集成的时候都一点一点得解决了。

测试领域是尽早介入尽早发现问题,开发领域,如果太晚介入问题就可能涉及架构调整了。架构调整就意味着很多东西都要返工,花费得时间太多,但是项目又不允许,只能一错再错一直错下去了。

假如我每天写3个自动化测试用例,只调试我今天写得3个测试用例有没有运行成功,就不会管前面写的用例了。本地运行之前写的所有的自动化用例时间可长了。所以在写了10个用例的时候,就可以加入jenkins集成。

每天写的测试用例都提交到svn/git上面。然后在持续集成平台,每天晚上8点钟,把这些代码都下载下来,然后配置一下,让它每天晚上都运行你的用例。今天运行了10个,明天晚上运行了13个....这样就是持续的运行过程中。

运行10条用例的时候发现了bug,就赶紧去改 ,改的时候就发现原来是这样要注意的,后面就不会再犯这样的错了。

当你写到60个用例的时候,前面的用例就已经非常稳定了,因为你每天都在调试它。

前期的结果不需要发给其它的测试人员,只需要发到自己的邮箱中,自己看着去调试即可。在这个过程中可以逐步的优化调整,慢慢提升它的通过率。

「在自己的本地只需调试现在正在开发的代码,jenkins负责给你全部放在一起运行,这就是持续集成。」

如果写了2个月的测试用例,就做了2个月的持续集成。

「jenkins是持续集成的手段之一。」

介入jenkins平台

Web自动化,客户一般是用Windows/linux来访问。

jenkins在linux上,代码在Windows上执行。

怎么介入jenkins平台?

jenkins一种新的模式:Master/Slave

1.为什么有Master/Slave模式?

因为和jenkins本身的功能有关。

一个公司有很多项目,大家都用jenkins平台。每一个项目上面都有环境部署,都有自动化测试。这么多项目都实现了自动化测试,全部都放在jenkins主机上运行。

每个项目都是晚上8、9、10、11点来运行自动化用例。运行自动化用例就会打开浏览器,你我它都打开浏览器是不是就乱套了?有可能就串操作了。

以前的模式,所有的任务都是由jenkins主机来运行(就是搭建jenkins服务器的这台电脑)。现在很多的项目都用它,这个主机的能力有限。设备的配置信息、负载都有限。

可以在jenkins上创建100-200个工程,但是如果让服务器一个人来干这个事,可能哪天就崩了。

每一个自动化任务都有相应的环境安装。让它执行100个任务,100个任务中,每个任务的环境它都需要具备。

2.当老板给你一个人安排这么多任务,你一个人干不过来了怎么办?你会向老板提议招人对吧。

当招来了一个小弟,那么你就是管理者了。

管理者:管理/分配任务--管理小弟--知道任务的结果。

小弟:接收任务--干活。

「Master就是管理者。Slave就是小弟--干活--其它的设备。Master(安装了jenkins的电脑)」

其它的电脑不需要安装jenkins的。只需要等着这个主地址向它发任务就行了,但是前提是它必须要向主机报到。Slave是没有限制的,Slave可以挂很多。挂10个20个都可以。

3.Slave向Master报到:

jenkins是个网站。以管理员的账户登录,可以对jenkins做很多的处理。在哪访问jenkins都一样,没说必须在主机访问,只要网络通顺,只要账号的权限够,该做的设置照样做。

以管理员的账号登录了:

远程工作目录:Slave涉及到的工作资源,全部放在这个目录下。

自己新建了一个Jenkins-Slave-Home文件夹,准备把执行机都放在这个下面:

以后在svn上下载的代码都是放在这个文件夹下。没有这个文件夹就创建个。

「在添加Agent节点的时候选择的是java web start方式启动的agent与Jenkins Server的连接。现在很多同学反馈找不到此选项了,开始我以为是汉化问题。后来发现新版本中修改了名称为Launch agent by connecting it to the master。如果你遇到了此类问题,可以选择Launch agent by connecting it to the master选项。」

改名字也不通知一声,哭了5555

这种连接方式,第一不需要向它传递ip地址,那么这个界面你只能在你的执行机上访问。比如我的这台电脑作为执行机,那么就必须在我这台执行机上访问网址。因为点击这个launch,就决定了是我这台电脑向主机报到,是通过这个程序去报到的。

没有明确给明ip地址,但是你在哪个电脑上点击的这个连接过程,那就是哪个电脑。因为本地运行这个程序,肯定知道自己的ip地址是多少的。

准备用谁当执行机,就用谁访问这个网址。

刷新后看到,连接成功的状态:

一个电脑只能连接一次,如果两台电脑都下载了,那就是2台执行机,以此类推。

「jenkins装在哪,哪个电脑就是主机。」

靠谱参考链接:

https://www.cnblogs.com/lcj0703/p/12268504.html

https://blog.csdn.net/weixin_40046357/article/details/107572671

未完待续~


本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-08-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 清菡软件测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 问题
    • 1.做自动化测试不是把框架和测试用例实现了就没有然后了。写完的目的是运行到项目上去,这个项目上,怎么来运用啊?
      • 2.尽早把用例放在jenkins平台上,还是用例完成的差不多了再放在jenkins平台上?
      • 介入jenkins平台
        • 怎么介入jenkins平台?
        • 靠谱参考链接:
        相关产品与服务
        持续集成
        CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档