Jmeter系列(41)- Jmeter + Ant +Jenkins 持续集成
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
Window 环境准备
安装 ant:https://www.cnblogs.com/poloyy/p/13267159.html
安装 jenkins:https://www.cnblogs.com/poloyy/p/13269167.html
Jenkins 配置 Ant
进入插件管理安装 ant 插件
进入 Global Tool Configuration,安装 Ant
默认会读取 ANT_HOME 环境变量设置好的 ANT 安装路径
本机配置 ant
修改 jmeter.properties
修改成 jmeter.save.saveservice.output_format=xml
为了后面生成 html 报告需要设置
移动 ant-jmeter-***.jar
将 E:\apache-jmeter-5.2.\extras 下的 ant-jmeter-1.1..jar 复制到 E:\apache-ant-1.9.\lib
这是用于发送邮件的,如果不发邮件可忽略
创建一个 items 项目
最后一步添加 build.xml 至关重要!!
至此创建成功
讲解 build.xml(重点)
前提
先提供一个改好的 build.xml,不想看步骤的可以直接下载改一些配置即可,需要改的地方都标出来了
链接:https://pan.baidu.com/s/116VUyjmf6pKGb1aY4ob_0Q
提取码:lnvy
project 标签
作用
ant 的根目录,每个 build 文件必须包括一个 project
属性含义
属性 | 含义 |
name | project 的名字 |
default | 默认执行的 target 任务 |
basedir | 指定的根路径 |
详解 default 默认执行的任务
在项目构建的 ant 配置中,如果 Targets 为空,则代表不指定需要执行的 target 任务
default = "all" ,则名为 all 的 target 将会被默认执行(上图看箭头就懂了)
target 标签
作用
target 为 ant 的基本执行单元,它可以包含一个或多个,多个之间可以存在相互依赖关系
属性含义
属性 | 含义 |
name | target 任务名称 |
depends | 依赖的父节点名称 |
property 标签
作用
创建一个属性,全局通用
name:属性名
value:属性值
如何引用属性:${name}
修改 build.xml
修改 property
这里修改 jmeter 相关的属性,方便后续复用
修改 jmeter脚本路径
需要修改 .jmx 文件所在路径和文件名
修改测试报告模板
修改邮件相关
- 要记住需要开启 smtp 服务,一般在邮箱设置-账户安全下面开启
- 注意不同邮箱的 smtp 服务地址是不一样的哦,以发送人邮箱为准
- password 属性需要填授权码哦!不同邮箱生成授权码方式也不一样,看下面图片圈起来地方
- mailport 属性,不同的邮箱,端口也是不一样的,163邮箱就是25
下图是 qq 邮箱
下图是 163 邮箱
163邮箱的服务器地址和端口号
构建项目
构建成功
查看邮箱
构建常见问题
如果下面的错误,参考这篇博文来解决问题哦:https://www.cnblogs.com/poloyy/p/13274741.html
如果是下面的错误,需要检查邮箱发送者的账号和授权码是否填对了哦
Jmeter系列(41)- Jmeter + Ant +Jenkins 持续集成的更多相关文章
- Jmeter+Ant+Jenkins持续集成方案改进
关于Jmeter+Ant+Jenkins如何搭建持续集成环境,网上资料一大把,就不多说了,本文主要谈一下期间的问题及扩展该持续集成方案. 其实核心的流程不复杂,Jenkins管理构建项目,Ant配置脚 ...
- Jmeter接口测试自动化(jmeter+ant+jenkins持续集成)
Jmeter是压力测试.接口测试工具,Ant是基于Java的构建工具,具有跨平台的作用,jenkins是持续集成工具.将这三者结合起来可以搭建一套webservice接口测试的持续构建环境. 1. ...
- 【此处有干货~】jmeter+ant+jenkins持续集成配置及过程中问题解决思路
本人是一枚工作近三年的小测试,大学正好专业为软件测试,在工作中用到最多的是功能测试.接口测试.压力测试.偶尔会涉及到性能测试......(小白,很多观念技术跟大佬差距太大,勿喷) 在接口测试过程当中, ...
- jmeter+ant+jenkins持续集成
邮件.报告插件和jenkins的war包下载地址:链接:https://pan.baidu.com/s/1gZJ53x50bxVyEsQFjdCkog 密码:1jtz 1.下载ant 网盘地址:链接 ...
- pytest系列(四)- pytest+allure+jenkins - 持续集成平台生成allure报告
pytest是什么 pytest是python的一款测试框架,拥有unittest的功能并比它更丰富. allure是什么 有非常多的优秀的测试框架,但却是有非常少优秀的报告工具可以展示非常清楚的用例 ...
- testng+ant+jenkins持续集成UI自动化
一.环境搭建 1. 安装testNG插件到eclipse. -) 选择菜单 Help /Software updates / Find and Install. -) 点击add button然后在l ...
- Jenkins持续集成企业实战系列之Jenkins插件下载及邮件配置-----05
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins持续集成企业实战系列之Jenkins手动构建-----04
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
- Jenkins持续集成企业实战系列之Jenkins配置演示-----03
注:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. 最初接触Jenkins也是由于公司需求,根据公司需求Java代码项目升级的.(公司是 ...
随机推荐
- Spire.Cloud.SDK for Java 合并、拆分Excel单元格
Spire.Cloud.SDK for Java 是Spire.Cloud云产品系列中,用于处理Word.Excel.PowerPoint以及PDF文档的JAR文件,可执行文档编辑.转换.保存等操作. ...
- 3.vue计算属性
1.计算属性 再vue中如果出现表达式过长或者逻辑比较复杂,这时会导致代码不清晰,臃肿,难以维护所以我们会使用计算属性进行书写 再计算属性中可以放负责的逻辑,可以是函数,表达式等,但最终会返回一个 ...
- [web][学习随笔]php中http post&get数据传输
GET <!--客户端发送--> <form id="form1" action="doGet.php" method="get&q ...
- js 不同时间格式介绍以及相互间的转换
首先必须要提到的是 Date 对象,它用来处理时间和日期. 使用 new Date() 语句可创建 Date 对象,创建出来的时间格式如下(后面提到的标准时间都是指该格式): Wed Jul 17 2 ...
- HashMap(二)之面试题系列
定义类考题 什么是Hash?什么是HashMap? HashMap 的工作原理是什么 HashMap HashTable的区别 为什么要用HashMap 源码类考题 什么是hash碰撞,怎么减少碰撞, ...
- 包子凑数(dp 0-1、完全背包)【背包问题】
包子凑数(蓝桥杯) 感谢:@ Statusrank 题目链接(点击) 题目描述 小明几乎每天早晨都会在一家包子铺吃早餐.他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子.每种蒸笼都有非常多 ...
- Java中的map集合顺序如何与添加顺序一样
一般使用map用的最多的就是hashmap,但是hashmap里面的元素是不按添加顺序的,那么除了使用hashmap外,还有什么map接口的实现类可以用呢? 这里有2个,treeMap和linkedH ...
- cc23b_demo-函数对象c++ 调用操作符的重载与函数对象-//用模板定义一元谓词、代码示范
//用模板定义一元谓词. #include <iostream> #include <vector> #include <algorithm> using name ...
- jmeter组件中 测试计划,线程组,sampler等等
[测试计划] 这边用户定义的变量,定义整个测试中使用的重复值(全局变量),一般定义服务器的ip,端口号 [线程组] 关于,线程组,我简单聊聊,有不对的地方欢迎大家拨乱反正 线程数:你需要运行的线程 比 ...
- Bestcoder Round8
4989Summary 既然用C++了就偷懒直接用STL大法了 #include<iostream> #include<algorithm> #include<vecto ...