持续集成实战 —— Jenkins自动化测试环境搭建

 🔥 交流讨论:欢迎加入我们一起学习!

🔥 资源分享耗时200+小时精选的「软件测试」资料包

🔥 教程推荐:火遍全网的《软件测试》教程  

📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

1.目的

在日常的项目测试过程中,搭建与维护测试环境是广大测试同学的一个基础技能,相信也很少会有公司完全不让测试去碰自己的测试环境。那么工作中大量的创建、部署、管理、维护等一系列的重复操作就成为了整个测试项目中一个巨大的工作量。
 
面对这样一种普遍的情况,Jenkins作为持续集成的良好解决方案就可以很好的解决以上的这些问题。对于一些重复的搭建部署操作都可以通过Jenkins来进行自动化完成,无需任何人工干预,有利于减少重复过程以节省时间、费用和工作量,让测试同学腾出更多的时间与精力来关注并着眼于其他的重要测试环节。
 

2.说明

1.此笔记的中所使用的操作系统为CentOS7.9,笔记中所涉及的软件版本有可能会因为时间的推移而导致不匹配或其他额外的操作,请大家有针对性的选择阅读与参考。
2.此笔记中的所有操作均基于root用户进行,其他用户如无权限请自行搜索(linux的基础操作这里不展开讨论),友情提示:即使有权限,也千万别在公司相关生产环境内试验探索哦。
3.本次实战中使用的是我们公司相关的业务项目,其中的代码与产品界面会做相关的脱敏操作。
 
 

3.项目描述&事前准备

1.文中产品项目为微服务架构,其他无关服务都已被简化省略,仅展示部分模块。
2.原有服务已简化,将服务器独立分为Jenkins服务器与业务服务器,不展示多余集群与节点,只需准备两台服务器即可(真机、虚拟机随意)
3.本文的主题是介绍Jenkins在持续集成中的使用方式,开发环境与所用到的软件版本可以任意指定,功能没有太大的区别,也不会影响使用。(文中使用的软件可以任意替换,任何的技术栈都可以,Jenkins除外)
 

4.环境介绍

服务器分为两台,Jenkins应用服务器与业务服务器,以下简称J-Server与S-Server。本文使用CentOS,J-Server中安装Jenkins即可,S-Server安装Java、Tomcat、Maven、Git即可。(这里的技术栈可以根据各自公司的业务与产品来进行随意调整,我们的项目内也有很多组合,只选取市面上最常见的来讲解)
 
 

5.服务基础配置

5.1 J-Server

服务器内的Jenkins安装与配置请参看之前的文章:

5.2 S-Server

业务服务器内的软件安装请自行网络搜索,网上有很多优秀的教程供大家参考。这里需要介绍的是一些重要的配置操作。

1.这里为了方便Git与Server之间进行安全的项目源代码的安全传输操作,我们需要在服务器中进行设置。

在Git安装完之后使用以下命令进行Git的全局配置

git config  --global user.name "你的用户名"
git config  --global user.email "你的邮箱"

使用ssh-keygen命令进行密钥的生成

ssh-keygen -C 邮箱 -t rsa

这里会询问你要创建的密钥的文件名,默认名字的话就直接回车
在这里插入图片描述
 

接下来询问是否要为密钥设定密码,默认回车跳过
在这里插入图片描述
 

完成之后在用户的主目录中会有一个影藏文件夹.ssh
进入后查看刚才的密钥是否生成正确

后缀名.pbu的是公钥
在这里插入图片描述
 

然后我们进入这个公钥文件,将文件里的内容复制出来
在这里插入图片描述

2.在GitHub中点击设置,选择SSH and GPG keys

在这里插入图片描述
 

创建一个新的SSH key

Title输入你自定义的名字即可
Key输入刚才在公钥中复制的那一串字符
确定添加

在这里插入图片描述

确认添加成功后Git与SSH密钥配置完成
在这里插入图片描述
 
 

6. Jenkins自动化任务配置与部署

6.1 节点创建

在Jenkins工作台中选择系统管理 > 节点管理

在这里插入图片描述

选择新建节点

在这里插入图片描述

节点名称输入你指定的名称即可
如果是全新节点的话可选择固定节点
点击创建

在这里插入图片描述

远程工作目录指的是S-Server上将执行自动化任务的路径位置
在这里插入图片描述

启动方式选择Launch agents via SSH
主机填入对应的S-Server的IP
凭证填入对应的S-Server登录用户名和密码(新建凭证看下面的操作)
主机密钥验证策略可以选择Non verifying Verification Strategy

在这里插入图片描述

没有凭证的话点击添加,选择Jenkins

在这里插入图片描述

其他选项不动,输入用户名和密码保存即可,之后在Credentials
下拉框里直接选择即可

在这里插入图片描述

6.2 启动并同步节点

添加完成后点击对应的节点名称,进入节点

在这里插入图片描述

点击重启代理

在这里插入图片描述

启动完成后,日志提示启动成功后返回列表查看节点状态,显示同步则表示节点启动成功

在这里插入图片描述

 
 

6.3 自动化任务创建

点击节点后选择新建任务

在这里插入图片描述

输入自定义的任务名称并选择构建自由风格的软件项目
确定添加

在这里插入图片描述

 
 

6.4 自动化任务配置

描述中输入任务相关的一些说明(非必须),这里还是推荐大家填写一下,很多必备的信息甚至备注都可以放在里面,方便其他测试人员快速的对任务有一个了解。

在这里插入图片描述

如果每个节点内的环境不是集群或业务有所不同的话还是建议勾上限“制项目的运行节点”的选项,并指定对应的服务节点。

在这里插入图片描述

在源码管理中选择Git

在这里插入图片描述

这里在仓库URL中输入项目的源代码下载地址,基于之前已经添加过SSH key了,下载的方式就在Git上选择SSH。在此之前大家记得把自己的项目或产品源代码push至对应的Git仓库并保证S-Sever可以clone代码至本地。
(这里根据自己公司的业务来进行选择,无论是公有仓库还是私有仓库,云还是私有化部署的仓库)
另外如果是第一次在新任务中创建仓库URL,记得在下面多创建一次仓库URL

在这里插入图片描述

凭证之前已经添加过了,直接选择S-Server的账密记录即可

在这里插入图片描述

这里选择源代码在Git上所对应的分支,默认为master分支,我的项目源代码在main分支上,这边就输入*/main

在这里插入图片描述

在扩展行为中选择新增

在这里插入图片描述

选择“检出到子目录”,英文选项(check out to a sub-directory)

在这里插入图片描述

输入自己定义的子目录名字即可

在这里插入图片描述

在构建中选择增加构建步骤,选择执行shell

在这里插入图片描述

自动化任务的流程示意图

在这里插入图片描述

基于以上的技术栈,我们执行以下shell命令

方便Jenkins进行后台运行

BUILD_ID=dontkillme
  • 1

设置两个全局变量,第一个可以返回工作目录所在位置,也就是刚才Jenkins中设置的远程目录;第二个可以返回Tomcat的安装位置,方便后续脚本内的Tomcat相关服务的操作。

export WORK_PATH=`pwd`
export TOMCAT_PATH=`S-Server内的tomcat安装路径`
  • 1
  • 2
sh $WORK_PATH/build.sh
  • 1

 
 

6.5 自动化任务运行

点击保存后,点击任务名

在这里插入图片描述

进入后点击左侧的立即构建

在这里插入图片描述

点击任务队列中对应的任务

在这里插入图片描述

选择控制台输出或直接查看状态图标

在这里插入图片描述

最后显示Finished: SUCCESS 就表示构建成功了

在这里插入图片描述

至此一个测试环境就通过Jenkins的自动任务构建完成了,大家可以通过对应的服务IP和端口进行访问验证。
以上只是展示了如何通过Jenkins来进行测试环境的快速自动化搭建,后续会对实战中的一些细节来进行讲解。

最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!

  • 24
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
搭建一个用于App自动化测试的环境,可以按照以下步骤进行: 1. 选择测试工具:根据你的需求和技术栈,选择适合的App自动化测试工具,如Appium、XCUITest、Espresso等。 2. 安装和配置开发环境:确保你的开发环境中已经安装了所选测试工具的相关依赖和插件,以及所需的编程语言和框架。 3. 准备测试设备:准备用于测试的真机设备和模拟器,并确保它们已经连接和配置好。 4. 编写测试脚本:使用你选择的测试工具和编程语言编写测试脚本,包括测试用例的设计和实现。 5. 设置版本控制:使用版本控制系统(如Git)管理你的测试代码,以便团队成员之间可以协同工作并追踪代码更改。 6. 配置持续集成:将你的测试环境与持续集成工具(如Jenkins)集成,以便在代码提交后自动运行测试脚本,并生成测试报告。 7. 配置测试环境:为自动化测试设置一个独立的测试环境,包括测试服务器、数据库等,以确保你的测试与生产环境隔离开来。 8. 运行和监控测试:通过连接真机设备或模拟器,运行你的自动化测试脚本,并监控测试结果和日志,及时发现和修复问题。 9. 持续改进和维护:定期审查和改进你的测试脚本,根据测试结果和反馈进行修复和优化,确保自动化测试的稳定性和可靠性。 这些步骤可以作为一个基本的指南来搭建App自动化测试环境,具体实施时需要根据你的具体需求和项目情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员二黑

V:testerhei

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值