news 2026/1/10 12:53:14

UI自动化测试—Jenkins配置优化

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
UI自动化测试—Jenkins配置优化

🍅点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

前一段时间帮助团队搭建了UI自动化环境,这里将Jenkins环境的一些配置分享给大家。

背景:

团队下半年的目标之一是实现自动化测试,这里要吐槽一下,之前开发的测试平台了,最初的目的是用来做接口自动化测试和性能测试,但由于各种原因,接口自动化测试那部分功能整个废弃掉了,其中和易用性有很大关系,另外,也和我们公司的接口业务也有关。不过性能测试功能开发同学用的很欢快,还有接口的管理,目前是连接前端与后端的重要桥梁。目前又加入了环境管理(我公司主要用docker创建开发和测试环境),最近又加入了需求管理与bug管理,所以,从“测试平台”变成了“研发协作平台”。为什么不用市面上主流的缺陷管理系统?例如,禅道,JIRA。因为我们公司有自己特定的开发流程。单就环境的管理(docker)市面上的平台就不能满足。

说回到自动化测试,当然是优先考虑的接口自动化,我之前也有分享过主流接口工具/框架的对比,但实际与业务线的测试同学沟通过后,发现支付的接口是异步的,走的网关也不确定,结果是很难做。在加上测试的业务是环环相扣的,用户从选择活动、加入购物车、到支付中间涉及十几接口,都高度依赖上一个接口的返回值。如果解除依赖(用mockServer)去测试单个的接口意义不大,也不能覆盖到现有业务场景。

于是,我们放弃了接口自动化测试,先从UI下手,这就比较好做了,模拟用户的操作流程就好了。所以,并不是接口自动化一定比UI自动化好做,这个得看项目。

UI自动化所用到的技术:

selenium:不解释。

pytest:单元测试框架,因为它可以全局的配置浏览器驱动的开启与关闭,而且有很多好用的扩展插件,更适合来做UI自动化。

pytest-html:生成HTML测试报告,可以配置用例失败自动截图,这一点对UI自动化很重要。

pytest-rerunfailures:可以实现用例的失败重跑,这一点对UI自动化也很重要。Selenium-page-objects:我封装的page objects库,以前也有介绍,让你编写page层更加简单。

Git/Bitbucket:我们的测试代码提交到Bitbucket上管理。

Jenkin做什么?

接下来才是重点,Jenkins主要用来运行UI自动化测试。接下来介绍一下我的配置。

配置Git,连接Bitbucket,检查项目代码更新。

定时任务,设置为每天晚上22:00运行。

构建命令,拉取代码,并运行所有用例。

设置HTML测试报告的路径

设置XML测试报告的路径。

配置发邮件功能。

大致效果如下:

可以点击HTML Report查看HTML报告,最新结果可以看到项目XML格式的报告。测试趋势图,这个是基于XML报告插件生成的。

在Jenkins中查看测试HTML测试报告。

当然,还有构建完成所收到的邮件。

希望以上的介绍,能给你提供一些思路。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/24 6:31:43

技术博客征文比赛:围绕LobeChat写作赢取奖励

LobeChat:当开源遇见优雅,重塑AI聊天界面的边界 在大模型浪潮席卷全球的今天,我们早已不再惊讶于一个AI能写出诗、编出代码,甚至通过图灵测试。真正让人皱眉的是——为什么用起来还是这么别扭? 你费尽千辛万苦本地跑通…

作者头像 李华
网站建设 2026/1/4 8:17:00

python环境变量配置

如果电脑没有配置python环境变量的话cmd中执行python命令C:\Users\a1>where python C:\Users\a1\AppData\Local\Microsoft\WindowsApps\python.exeC:\Users\a1>pythonC:\Users\a1>会弹出让你下载。这就是没有配置python环境变量的现象。配置python环境变量&#xff0c…

作者头像 李华
网站建设 2025/12/24 15:55:59

libmodbus库解析方式完整版

1.库解析1.1首先在命令行(cmd)执行对 libmodbus 执行 cscript configure.js ----- >生成config.h的文件libmodbus-master\src\win32 找到之后,win r 输出cmd 进入bash, 输入d: 进入根目录 cd 整体\libmodbus-master\src\w…

作者头像 李华
网站建设 2025/12/24 17:37:43

基于PLC控制的城市污水处理系统

2 设计方案的确定 2.1 PLC的简介 PLC是一种以数字运算操作为基础的可编程逻辑控制器,其服务于大体量、高要求、环境恶劣、复杂程度高的工业环境。它采用一类可编程存储器,有着独特的内部存储程序、较强的逻辑运算、顺序控制、定时、记数与算数操作等用户…

作者头像 李华
网站建设 2026/1/3 22:31:06

整体设计 定稿 之 5 讨论问题汇总 和新建 表述总表/项目结构表 文档分析,到读表工具核心设计讨论(豆包助手)

摘要本次讨论聚焦第一阶段核心目标——“架构表读表工具”定版落地,对前期设计进行深化完善并确认落地可行性。首先,明确补充随动原则核心说明,将其作为架构表设计与读表工具开发的核心准则,界定唯一可定的视觉元素与表格形式规则…

作者头像 李华
网站建设 2026/1/4 13:13:32

一文彻底搞懂性能调优

🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 什么是性能调优?(what)为什么需要性能调优?(why)什么时候需要性能调优?(when)什么地方需要性能调优?(where)什么…

作者头像 李华