Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Jenkins持续集成「配置Slave」

Jenkins持续集成「配置Slave」

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

问题

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 删除。

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

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
小程序的自动化测试与持续集成
自动化测试 是指通过编写自动化脚本来模拟用户操作并验证系统功能是否正常的一种测试方法。与传统的手动测试相比,自动化测试能够提高测试效率、减少人工错误,尤其在回归测试、压力测试等场景中表现尤为重要。
LucianaiB
2025/02/10
1690
持续集成有什么好处?快来看鸭
正式接收开发转过来的包之前,先从 svn 上下载代码,给它做次静态代码检查,然后编译打包。可以在开发的服务器或者自己的服务器运行单元测试文件。单元测试后,没用什么大的 bug,再部署到测试环境中。测试环境部署完成后先做冒烟测试,尽快看看主流程有没有问题。如果冒烟测试没问题就做回归测试。当然 Jenkins 也可以做其它事情。
清菡
2020/12/02
6830
持续集成有什么好处?快来看鸭
Web持续集成工作实践
摘要 如果团队开发成员经常集成他们的工作,每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建来验证,从而尽快地发现集成错误。那么这个过程可以大大减少集成的问题,让团
IT大咖说
2018/04/03
1.1K0
Web持续集成工作实践
持续集成有什么好处?快来看鸭
正式接收开发转过来的包之前,先从 svn 上下载代码,给它做次静态代码检查,然后编译打包。可以在开发的服务器或者自己的服务器运行单元测试文件。单元测试后,没用什么大的 bug,再部署到测试环境中。测试环境部署完成后先做冒烟测试,尽快看看主流程有没有问题。如果冒烟测试没问题就做回归测试。当然 Jenkins 也可以做其它事情。
清菡
2020/09/05
5590
手把手教你利用Jenkins持续集成iOS项目
众所周知,现在App的竞争已经到了用户体验为王,质量为上的白热化阶段。用户们都是很挑剔的。如果一个公司的推广团队好不容易砸了重金推广了一个APP,好不容易有了一些用户,由于一次线上的bug导致一批的用户在使用中纷纷出现闪退bug,轻则,很可能前期推广砸的钱都白费了,重则,口碑不好,未来也提升不起用户量来了。静下心来分析一下问题的原因,无外乎就是质量没有过关就上线了。除去主观的一些因素,很大部分的客观因素我觉得可以被我们防范的。根据大神们提出的一套开发规范建议,CI + FDD,就可以帮助我们极大程度的解决客观因素。本文接下来主要讨论 Continuous Integration 持续集成(简称CI)
一缕殇流化隐半边冰霜
2018/08/29
1.6K0
手把手教你利用Jenkins持续集成iOS项目
Jenkins持续集成「编译打包、代码检查、单元测试、环境部署、软件测试​」
Jenkins 就是常说的 CI 平台(持续集成)。持续集成(CI)是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。
清菡
2020/09/01
1.9K0
移动应用的左膀右臂:持续集成与自动化测试
本文目录: 一、为什么要做移动应用的持续集成与自动化测试 二、移动应用持续集成与自动化测试的四大挑战 三、移动应用持续集成与自动化测试的最佳实践 四、总结 一、为什么要做移动应用的 持续集成与自动化测试 持续集成与自动化测试是移动应用又快又稳发展的催化剂 移动应用需要做持续集成与自动化测试吗?我想告诉大家的是,这事非常值得做。为什么呢? 近5年来移动业务快速发展,市场也日趋成熟,但是移动应用的开发在大部分企业里还是采用传统的开发模式,完全靠手工完成开发-编译-打包-测试等一系列软件研发过程,过程重复且单一,
yuanyi928
2018/03/30
1.2K0
移动应用的左膀右臂:持续集成与自动化测试
从无到有:京东持续集成实践分享
讲师 | 潘晓明 编辑 | 黄晓轩 讲师简介 潘晓明 目前就职于京东商城平台产品研发部,主要从事测试开发一职,擅长测试工具的设计与开发。先后就职于惠普,腾讯,在测试领域奋斗了 10 多年,对黑盒测试,
DevOps时代
2018/04/08
1.7K0
从无到有:京东持续集成实践分享
干货 | 携程机票前端UI自动化与持续集成升级实践
JinG、YuWang,携程前端开发工程师,负责机票主流程预定React Native技术栈相关开发工作。
携程技术
2020/05/09
1.2K0
干货 | 携程机票前端UI自动化与持续集成升级实践
Jenkins持续集成「编译打包、代码检查、单元测试、环境部署、软件测试​」
Jenkins 就是常说的 CI 平台(持续集成)。持续集成(CI)是一种实践,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。
清菡
2020/12/02
7230
Jenkins持续集成「编译打包、代码检查、单元测试、环境部署、软件测试​」
利用Robot Framework实现多平台自动化测试
基于Robot Framework、Jenkins、Appium、Selenium、Requests、AutoIt等开源框架和技术,成功打造了通用自动化测试持续集成管理平台(以下简称“平台”),显著提高了测试质量和测试用例的执行效率。
测试开发技术
2021/11/04
2.2K0
基于 KIF 的 iOS UI 自动化测试和持续集成
客户端 UI 自动化测试是大多数测试团队的研究重点,本文介绍猫眼测试团队在猫眼 iOS 客户端实践的基于 KIF 的 UI 自动化测试和持续集成过程。 测试框架的选择 iOS UI 自动化测试框架有不少,其中 UI Automation 是 Apple 早期提供的 UI 自动化测试解决方法,用 JavaScript 编写测试脚本,通过标签和值的可访问性获得 UI 元素,来完成相应的交互操作。 一些第三方 UI 解决方案以 UI Automation 为基础,对其进行补充和优化,包括扩展型 UI Automa
美团技术团队
2018/03/12
2.4K0
基于 KIF 的 iOS UI 自动化测试和持续集成
移动性能测试 | 持续集成中的 Android 稳定性测试
来自学院内部学员 xinxi 同学的又一篇佳作,本文主要介绍了作者如何借助开源工具进行 Android 的稳定性测试,并在持续集成中使用,希望对大家有所帮助。
霍格沃兹测试开发
2020/07/16
1.5K0
移动性能测试 | 持续集成中的 Android 稳定性测试
自动化持续集成环境搭建(下):git + maven + jenkins
上一篇,主要演示了被测试项目的持续集成,自动化持续集成环境搭建(上):git + maven + jenkins,本篇,将集成自动化测试框架,自动运行测试脚本、生成测试报告、发布报告。
软测小生
2020/02/24
6060
基于Jenkins打造符合DevOps能力成熟度三级标准的持续集成流水线
DevOps的核心是自动化,自动化的核心是标准化。而DevOps最重要的一环节是持续交付,持续交付中建设的重点是流水线,所以如何打造标准的持续交付流水线则为DevOps建设中最重要的一环,也是评估DevOps能力的一个重要的打分点。
JFrog杰蛙科技
2020/02/14
4K1
DevOps - 持续集成
最近在担任公司部门的DevOps Champion的角色,一直觉得这个只是一个协调者的角色(而不是一个SME的角色),我的工作大概就是将每个项目的devops工具收集一下,然后用图表的形式去体现大家用devops的工具情况,再就是分享一下好的devops实践. 在我们部门里,我自己也是一个tech leader的角色,也带着两个项目在身上,我的项目可以说是部门的number one了,我们有自动化构建,部署,和部分自动化测试,在我收集的过程当中,有几个项目也说自己也都做好了自动化构建和部署,我也知道他们并不是实行的很好,但我就是找不出个问题来,另我非常的困惑, 前几天和我们的管理教练聊了以后,另我豁然开朗,其实做好这个工作,并不只是一个协调者,我还要推动整个部门的devops前进,就像敏捷实践一样,要让我们的问题暴露出来,让他们理解什么是持续集成,激发他们自己做持续改进。
PM吃瓜
2019/11/20
1K0
自动化持续集成环境搭建(上):git + maven + jenkins
当前,自动化已经是测试必备技能之一了,除了要会设计、开发自动化测试框架,搭建自动化持续集成环境也是必须的,本篇,将演示如何搭建自动化持续集成环境;
软测小生
2020/02/24
2K0
小巧“玲珑”—京东物流自动化测试平台核心功能首次曝光
负责京东物流研发的全部产品线的质量保障工作,是京东集团最早开始全面实施自动测试的团队之一。经过多年的技术沉淀,围绕质量、效率、过程改进、技术提升等方面,去发现、挖掘工作中的难点&痛点,自主研发了一系列有关自动化、性能、持续集成系统和工具。
京东技术
2018/07/30
1.3K0
小巧“玲珑”—京东物流自动化测试平台核心功能首次曝光
Jenkins持续集成
在传统的瀑布开发模型中,是所有人写好代码之后提交版本管理工具,然后统一进行合并,然接着进行测试,确保准发布的版本无误后再进行版本的正式发布。在这种流程下,往常会把风险堆到软件发布前的最后阶段,在整体测试的环节下出现许多不可预知的问题。
TestOps
2022/04/07
1.6K0
Jenkins持续集成
利用Xcode Server实现bot持续集成
Xcode Server是配置在Mac端的一个服务器,在这个服务器上我们可以创建Bot自动执行机器人,软件应用程序在本地(Xcode development Macs)开发过程中,会将代码不断合并到git上(SCM Repository), Bot会在指定的时间将git上的代码拉取到Server上,并且执行需要的操作,例如pod install以及创建ipa上传到蒲公英等,执行完成之后会生成执行报告(Reports),如果有自动化测试的话,还会输出测试统计数据。
用户5521279
2019/06/02
4.5K1
推荐阅读
相关推荐
小程序的自动化测试与持续集成
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档