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测试报告。
当然,还有构建完成所收到的邮件。
希望以上的介绍,能给你提供一些思路。
感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取
相关文章:
![](https://img-blog.csdnimg.cn/8b1d1b46e047429cba0f4a2a115d53d7.png)
UI自动化测试之Jenkins配置
团队下半年的目标之一是实现自动化测试,这里要吐槽一下,之前开发的测试平台了,最初的目的是用来做接口自动化测试和性能测试,但由于各种原因,接口自动化测试那部分功能整个废弃掉了,其中和易用性有很大关系…...
![](https://img-blog.csdnimg.cn/4f2d87dc6de24aeab1eccc132e6b4efd.png)
电视盒子什么品牌好?数码博主盘点目前性能最好的电视盒子
电视盒子是非常重要的,老人小孩基本每天都会看电视,而电视盒子作为电视盒子的最佳拍档销量十分火爆,我自己每个月都会测评几次电视盒子,今天给大家详细解读一下电视盒子什么品牌好,看看目前性能最好的电视盒子是哪些&a…...
![](https://www.ngui.cc/images/no-images.jpg)
对于枚举类型的输出
对于枚举类型的输出 对于枚举类型的输出,您可以使用以下方法:1. 将枚举值转换为整数进行输出:cppODU_TYPE type ODU_TYPE_331;int value static_cast<int>(type);std::cout << "ODU_TYPE: " << value <<…...
![](https://img-blog.csdnimg.cn/e074ae3af8ae432da5f7bacd597ecd1d.png)
solidity开发环境配置,vscode搭配remix
#学习笔记 初学solidity,使用remix非常方便,因为需要的环境都配置好了,打开网站就可以使用。 不过在编写代码方面,使用vscode更方便,而vscode本身并不能像remix那样部署合约,它还需要安装插件。 点击红色箭…...
![](https://www.ngui.cc/images/no-images.jpg)
chatGPT生成代码--go组合算法
提问:用golang写一个组合算法函数zuhe(x,n),x为组合所需的字符,n 为组合后的字符串长度,例如 x"ab", n2 结果返回 aa,ab,bb,ba 结果:下面是一个用Go编写的生成长度为n的字符串组合的函数 zuhe,其…...
![](https://img-blog.csdnimg.cn/img_convert/a76d68a2d039faebdc727282b8cc4c77.jpeg)
推荐6款普通人搞副业做自媒体AI工具
hi,同学们,我是赤辰,本期是赤辰第5篇AI工具类教程,文章底部准备了粉丝福利,看完可以领取!身边越来越多的小伙伴靠自媒体实现财富自由了!因此,推荐大家在工作之余或空闲时间从事自媒体…...
![](https://www.ngui.cc/images/no-images.jpg)
vs中git提交合并分支的步骤记录
vs打开终端 PS D:\project\et_lower4_driver> git pull Already up to date. PS D:\project\et_lower4_driver> git branch * kiyun_usb7851 master PS D:\project\et_lower4_driver> git checkout master Switched to branch master Your branch is up to date wit…...
![](https://www.ngui.cc/images/no-images.jpg)
PostgreSQL 备份恢复:pg_probackup
文章目录 前言1. 安装备份工具1.1 环境介绍1.2 RPM 安装1.3 验证 2. 配置备份工具2.1 初始化设置2.2 创建备份用户2.3 配置自动归档 3. 工具使用介绍3.1 init3.2 add-instance3.3 del-instance3.4 set-config3.5 show-config3.6 set-backup3.7 backup3.8 show3.9 delete3.10 re…...
![](https://img-blog.csdnimg.cn/8d935a97f8a34d11a425eb84342fbfc1.png)
博客程序系统其它功能扩充
一、注册功能 1、约定前后端接口 2、后端代码编写 WebServlet("/register") public class RegisterServlet extends HttpServlet {Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {//设置…...
![](https://img-blog.csdnimg.cn/a9939d13e47b4e3d8b656405692330b4.png)
MATLAB 2023安装方法之删除旧版本MATLAB,安装新版本MATLAB
说明:之前一直使用的是MATLAB R2020b,但最近复现Github上的程序时,运行不了,联系作者说他的程序只能在MATLAB 2021之后的版本运行,因此决定安装最新版本的MATLAB。 系统:Windows 11 需要卸载的旧MATLAB 版…...
![](https://img-blog.csdnimg.cn/2537a9375bd443448ce75fd6dd499e03.png)
全国唯一一所初试考Java的学校!平均300分拿下
苏州科技大学 考研难度(☆) 内容:23考情概况(拟录取和复试分析)、院校概况、23专业目录、23复试详情、各专业考情分析、各科目考情分析。 正文1187字,预计阅读:3分钟 2023考情概况 苏州科技…...
![](https://www.ngui.cc/images/no-images.jpg)
day35 | 860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球
目录: 解题及思路学习 860. 柠檬水找零 在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。 每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美…...
![](https://www.ngui.cc/images/no-images.jpg)
ffmpeg批量转码
新建.bat文件 echo offfor %%s in (*.mp4) do ( echo %%s ffmpeg -i %%s -b 7M %%~ns7m.mp4 ) pause如果你的电脑有显卡,也可以使用硬件转码。转码程序链接...
![](https://img-blog.csdnimg.cn/8817a9a262e947f0ab1f7b3fad84c215.png#pic_center)
时序预测 | MATLAB实现基于QPSO-BiLSTM、PSO-BiLSTM和BiLSTM时间序列预测
时序预测 | MATLAB实现基于QPSO-BiLSTM、PSO-BiLSTM和BiLSTM时间序列预测 目录 时序预测 | MATLAB实现基于QPSO-BiLSTM、PSO-BiLSTM和BiLSTM时间序列预测效果一览基本描述程序设计参考资料 效果一览 基本描述 1.Matlab实现QPSO-BiLSTM、PSO-BiLSTM和BiLSTM神经网络时间序列预测…...
![](https://img-blog.csdnimg.cn/f16587e5b86f49dabd609efeef505f25.png)
【TypeScript学习】—基本类型(二)
【TypeScript学习】—基本类型(二) 一、TypeScript基本类型 //也可以直接用字面量进行类型声明let a:10; a10;//也可以使用 |来连接多个类型(联合类型)let b:"male"|"female"; b"male"; b"fe…...
![](https://img-blog.csdnimg.cn/d0a43a7953c944489210f89763447925.jpeg#pic_center)
uni-app点击复制指定内容(点击复制)
官方api uni.setClipboardData(OBJECT) uni.setClipboardData({data: 要被复制的内容,success: function () {console.log(success);} });...
![](https://img-home.csdnimg.cn/images/20230724024159.png?be=1&origin_url=https://www.learnfk.com/guide/images/wuya.png)
无涯教程-Flutter - 简介
Flutter是一个由谷歌开发的开源移动应用软件开发工具包,用于为Android、iOS、 Windows、Mac、Linux、Google Fuchsia开发应用。 通常,创建移动应用程序是一个非常复杂和具有挑战性的任务。有许多框架可用,它提供了开发移动应用程序的出色函数…...
![](https://img-blog.csdnimg.cn/204a09d262de43b5a3eb8e833972a42f.png)
【STM32】学习笔记-时间戳RTC
Unix时间戳 Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒 时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量 世界上所有时区的秒计数器相同,不同时区通…...
![](https://img-blog.csdnimg.cn/b20856e2bca24149a68613113796233d.jpeg)
绿色能源迎来跨越式增长新时代
当今世界,百年未有之大变局加速演进,新一轮科技革命和产业变革深入发展,全球气候治理呈现新局面,新能源和信息技术紧密融合,生产生活方式加快转向低碳化、智能化,能源体系和发展模式正在进入非化石能源主导…...
![](https://img-blog.csdnimg.cn/0063fb3a8f93470195438191bce83553.gif#pic_center)
【算法】函数渐近的界基础知识及定理
创作不易,本篇文章如果帮助到了你,还请点赞 关注支持一下♡>𖥦<)!! 主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步! 🔥c系列专栏:C/C零基础到精通 🔥 给大…...
![](https://www.ngui.cc/images/no-images.jpg)
stable diffusion实践操作-writing
文章目录 前言一、优点1.1、免费开源1.2、拥有强大的外接模型 二、组成要素2.1 底模2.2 风格2.3 提示词2.4 参数配置 三、生图原理四、下载链接 实践正文一、安装1.1 电脑硬件配置查看1.2 安装本地版本的stable diffusion1.3 SD使用教程 二、模型介绍与下载2.1大模型2.2 Lora模…...
![](https://img-blog.csdnimg.cn/2715a29e245347208bb62ba5bc52525c.png)
idea查找maven所有依赖
文章目录 idea自带的依赖结构图idea安装maven helper插件 idea自带的依赖结构图 缺点是只有依赖,没有版本 idea安装maven helper插件 settings–>plugins–>搜索maven helper并安装 安装后打开pom.xml文件会有依赖解析 勾选conflict就是有冲突的依赖选中…...
![](https://img-blog.csdnimg.cn/img_convert/ae0ffdfaddca40da96203ec3fc62d1b9.png)
【业务功能篇97】微服务-springcloud-springboot-电商购物车模块-获取当前登录用户的购物车信息
购物车功能 一、购物车模块 1.创建cart服务 我们需要先创建一个cart的微服务,然后添加相关的依赖,设置配置,放开注解。 <dependencies><dependency><groupId>com.msb.mall</groupId><artifactId>mall-commo…...
![](https://img-blog.csdnimg.cn/b5e7837c39254e0da4b4037432ea734e.png)
Shell常用的几个正则表达式:[:alnum:], [:alpha:], [:upper:], [:lower:], [:digit:] 认知
一:通配符命令简介: 匹配符合相关条件的符号,匹配文件名查找。 通配符类型: *:匹配任意长度的任意字符 ?:匹配任意单个字符 []:匹配指定范围内的任意单个字符 [^]:匹配指…...
![](https://img-blog.csdnimg.cn/38f8ad1e8cc646be95216164326bb1d3.png)
简单的爬虫代码 爬(豆瓣电影)
路漫漫其修远兮,吾将上下而求索 这次写一个最简单的python爬虫代码,也是大多教程第一次爬取的,代码里面有个别的简单介绍,希望能加深您对python爬虫的理解。 本次爬取两个网页数据 一 爬取的网站 豆瓣电影 爬取网页中的&#…...
![](https://img-blog.csdnimg.cn/85ee956a34424e7ab010d14c56444c2d.png)
微服务之架构演变
随着互联网的发展,网站应用规模不断扩大,网站架构随之不断演变,演变历史大致分为单体应用架构-垂直应用架构-分布式架构-SOA架构-微服务架构-云原生架构 架构演变 单体应用架构 以前网站流量小,只需要一个应用就可以把所有功能…...
![](https://www.ngui.cc/images/no-images.jpg)
面试问题记录一 --- C++(Qt方向)
以下是我于2023年6~7月间换工作时遇到的面试题目,有需要的小伙伴可以参考下。约100个题目。 1 C和C++的区别 1) 文件区别:C源文件后缀 .c;C++源文件后缀 .cpp 2) 返回值: C默认返回int型;C++ 若无返回值,必须指定为void 3) 参数列表:C默认接收多个…...
![](https://www.ngui.cc/images/no-images.jpg)
使用词袋模型(BoW)测试提取图像的特征点和聚类中心
文章目录 环境配置代码测试 环境配置 (1) 导入opencv,参考链接 https://blog.csdn.net/Aer_7z/article/details/132612369(2) 安装numpy 激活虚拟环境的前提下,输入: pip install numpy(3) 安装sklearn 激活虚拟环境的前提下,输…...
![](https://img-blog.csdnimg.cn/71d5f441a11e433b9b99f734c728c9ee.png)
利用vba处理Excel表格数据实现键值转化,适用于将编码转化成对应的文本
最近遇到了一个甲方需要提供系统登录的用户名单和对应的角色权限内容。无奈直接从数据库导出的数据对应的都是编码,没有转成中文,想着偷个懒能不能直接用Excel直接转,网上看了一下有修改单元格格式的,但需要编码是2到3个。多的就用…...
![](https://img-blog.csdnimg.cn/img_convert/a1319529fecb7cee7baf5ee328a432c9.gif)
IntelliJ IDEA(Windows 版)的所有快捷键
🪁🍁 希望本文能够给您带来一定的帮助🌸文章粗浅,敬请批评指正!🍁🐥 大家好 本文参考了 IntelliJ IDEA 的官网,列举了IntelliJ IDEA(Windows 版)的所有快捷…...
![](/images/no-images.jpg)
wordpress不安装先写前端/南宁白帽seo技术
一个经常会被问到的问题: 为什么不在 created 里去发ajax?created 可是比 mounted 更早调用啊,更早调用意味着更早返回结果,那样性能不是更高? 首先,一个组件的 created 比 mounted 也早调用不了几微秒&a…...
![](http://image78.360doc.com/DownloadImg/2014/08/2218/44517223_5.png)
顺德龙江网站建设/网络营销方案策划书
Java I/O流-总结(InputStream,OutputStream,Reader,Writer)2014-08-22一、 流的分类 按数据流动方向– 输入流:只能从中读取字节数据,而不能向其写出数据– 输出流:只能向其写入字节数据,而不能从中读取数据 按照…...
![](http://tool.chinaitlab.com/UploadFiles_9734/200605/20060508115026932.jpg)
初学者怎么做php网站/东莞网站建设推广技巧
七种办法减少Word容量(转)利用Word生成的文档,每页在20KB左右,但看到用记事本生成的文档,相同的内容只有1KB左右,能让Word也减减肥吗?其实我们可以采用一些行之有效的方法来减小Word文档的容量。 1.取消快速…...
![](/images/no-images.jpg)
如何设计网站的首页/网站推广哪家好
下载到SlideMenu的源码,打开例子,发现有些错误,先把依赖的包给导入发现在BaseActivity有几个红叉,提示不能使用getActionBar...什么的分析一下其使用过程,首先 BaseActivity extends SlidingFragmentActivity为了兼容性…...
![](/images/no-images.jpg)
承德做网站/友情链接英文
1.首先安装好LAMP这一个组合,在安装的过程中重点关注PHP的安装./configure --prefix/usr/local/php5 --enable-mbstring--with-apxs2/usr/local/apache2/bin/apxs--with-mysql/usr/local/mysql--with-config-file-path/usr/local/php5--with-zlibmake ;make install…...
![](/images/no-images.jpg)
网站建设价格/青岛网络优化哪家专业
搬到了gipsyh.icu...