在 Jenkins 中运行 Selenium Cucumber 测试

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / 1v1 提问 / Java 学习路线 / 学习打卡 / 每月赠书 / 社群讨论

  • 新项目:《从零手撸:仿小红书(微服务架构)》 正在持续爆肝中,基于 Spring Cloud Alibaba + Spring Boot 3.x + JDK 17...点击查看项目介绍 ;
  • 《从零手撸:前后端分离博客项目(全栈开发)》 2 期已完结,演示链接: http://116.62.199.48/ ;

截止目前, 星球 内专栏累计输出 63w+ 字,讲解图 2808+ 张,还在持续爆肝中.. 后续还会上新更多项目,目标是将 Java 领域典型的项目都整一波,如秒杀系统, 在线商城, IM 即时通讯,权限管理,Spring Cloud Alibaba 微服务等等,已有 2200+ 小伙伴加入学习 ,欢迎点击围观

本文介绍如何在 Jenkins 中配置和运行 Selenium(+ Cucumber)测试。在我们深入了解更多细节之前,我们必须在服务器中安装 Jenkins。这是在 linux 服务器 中设置 Jenkins 的快速方法。

好的,一切都完成了,让我们按照步骤进行,

步骤1

首先你需要安装谷歌浏览器。这在无头模式下称为 chrome。因为在 Jenkins 中运行测试时,你真的看不到 chrome 窗口。


 wget -qO - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -  
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'  
sudo apt-get update  
sudo apt-get install google-chrome-stable

第2步

然后安装 xvfb。好的,这是什么 xvfb ?

基于维基百科:

“Xvfb 或 X 虚拟帧缓冲区是实现 X11 显示服务器协议的显示服务器。与其他显示服务器相比,Xvfb 在内存中执行所有图形操作而不显示任何屏幕输出。从客户端的角度来看,它的行为完全像任何其他 X 显示服务器,根据需要提供请求并发送事件和错误。但是,不显示任何输出。此虚拟服务器不要求运行它的计算机具有屏幕或任何输入设备。只需要一个网络层”


 wget -qO - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -  
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'  
sudo apt-get update  
sudo apt-get install google-chrome-stable

然后启动xvfb


 wget -qO - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -  
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'  
sudo apt-get update  
sudo apt-get install google-chrome-stable

步骤 3

好的,服务器更改已完成。现在是时候进入 Jenkins 配置了。

首先安装这个插件,(Jenkins -> Manage Jenkins --> Manage Plugins)

为什么我们需要这个?

这个插件允许 Jenkins 将 Selenium + Cucumber 结果显示为带有屏幕截图的图表。

因此,为了生成图表,此插件需要从 Selenium + Cucumber 生成的 report.json 文件。


 wget -qO - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -  
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'  
sudo apt-get update  
sudo apt-get install google-chrome-stable

这是 Jenkins 中的插件配置。

创建 Jenkins Job --> 然后将其添加为“构建后步骤”












步骤4

将以下环境变量添加到 Jenkins。 (詹金斯 --> 管理詹金斯 --> 配置系统)


 wget -qO - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -  
sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'  
sudo apt-get update  
sudo apt-get install google-chrome-stable

好的,我们只是配置 Jenkins 来运行 selenium 和 Cucumber 测试。

现在运行 Jenkins 作业并检查黄瓜报告。 :)

这里有一些示例报告,







相关文章