jmeter+jenkins+git+ant
摘自:https://www.cnblogs.com/syw20170419/p/10732167.html
使用场景:
多人协作,共同完成脚本的编写,脚本之间进行合并后,用远程构建运行脚本。做接口的轮训测试
基本的配置与Jenkins+Ant+SVN+Jmeter实现持续集成的配置一样,主要在Jenkins的配置上的区别会有所不同
安装的插件:
enkins安装好之后,需要为其安装gitlab插件:在主面板上点击Manage Jenkins -> Manage Plugins,选择安装Gitlab Plugin和Gitlab Hook Plugin。
常用安装的插件:Ant plugin 、Git 、 Git Parameter、 GitHubAPI、 GitHubBranch Source、 SSH Slaces、Subversion (SVN的插件)
配置SSH key
由于jenkins需要从gitlab上拉取代码,通过ssh方式
1、Jenkins的“配置”:

2、build.xml的修改
详见build.xml源码

<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<project name="ant-jmeter-test" default="run" basedir=".">
<tstamp>
<format property="time" pattern="yyyyMMddHHmm" />
</tstamp> <!--<property name="testpath" value="${user.dir}"/> -->
<!-- jmeter的存放路径-->
<property name="jmeter.home" value="/Users/apple/Downloads/Auto/apache-jmeter-5.1"/>
<property name="jmeter.home" value="/Users/apple/Downloads/Auto/apache-jmeter-5.1" />
<!-- jmeter生成jtl格式的结果报告的路径-->
<property name="jmeter.result.jtl.dir" value="/Users/apple/.jenkins/workspace/autotest-api/TestReport/jtl" />
<!-- jmeter生成html格式的结果报告的路径-->
<property name="jmeter.result.html.dir" value="/Users/apple/.jenkins/workspace/autotest-api/TestReport/html" />
<!-- 生成的报告的前缀-->
<property name="ReportName" value="TestReport" />
<property name="jmeter.result.jtlName" value="${jmeter.result.jtl.dir}/${ReportName}${time}.jtl" />
<property name="jmeter.result.htmlName" value="${jmeter.result.html.dir}/${ReportName}${time}.html" /> <!-- 输出生成的报告名称和存放路径-->
<echo message="${jmeter.result.jtlName}"/>
<echo message="${jmeter.result.htmlName}"/>
<echo message="${jmeter.result.html.dir}"/> <target name="run">
<antcall target="test"/>
<antcall target="report"/>
</target> <!--加载jar包,解决显示时间问题-->
<path id="xslt.classpath">
<fileset dir="${jmeter.home}/lib" includes="xalan*.jar"/>
<fileset dir="${jmeter.home}/lib" includes="serializer*.jar"/>
</path> <target name="test">
<taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
<jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
<!-- 声明要运行的脚本。"*.jmx"指包含此目录下的所有jmeter脚本--> <!--未使用Git前,可以给定目录拉取本地的脚本执行-->
<!-- <testplans dir="/Users/iber/Test_group/jmeter/apache-jmeter-3.3/TestScrip_Lucky" includes="20_Interface_New.jmx”/>-->
<!--添加Git后,修改路径,默认运行的脚本从Jenkins的workspace中拉取-->
<testplans dir="/Users/apple/.jenkins/workspace/autotest-api" includes="20_Interface_New.jmx" />
<property name="jmeter.save.saveservice.output_format" value="xml"/>
</jmeter>
</target> <target name="report">
<tstamp> <format property="report.datestamp" pattern="yyyy-MM-dd HH:mm" /></tstamp>
<xslt
classpathref="xslt.classpath"
force="true"
in="${jmeter.result.jtlName}"
out="${jmeter.result.htmlName}"
style="${jmeter.home}/extras/jmeter.results.shanhe.me.xsl">
<!--显示dateReport的时间-->
<param name="dateReport" expression="${report.datestamp}"/>
</xslt>
<!-- 因为上面生成报告的时候,不会将相关的图片也一起拷贝至目标目录,所以,需要手动拷贝 -->
<copy todir="${jmeter.result.html.dir}">
<fileset dir="${jmeter.home}/extras">
<include name="collapse.png" />
<include name="expand.png" />
</fileset>
</copy>
</target>
</project>

3、Git的操作
步骤:Git上创建对应的project--进入project--settings--Repository--Deploy Keys--添加自己电脑生成的key即可。
秘钥的生成与查看,详见链接:
如下是截图示例:


Gitlab添加的是”公钥“

4、Jenkins的“Credentials" 中的配置。Credentials添加的是”私钥“。

凭证的添加如下:注意,如果在生成秘钥时,输入了密码,截图中的passphrase需要输入当时添加的秘钥

如下的一种方式进行添加也行。




注:一旦如上的一切配置好后:
1、不可随意修改脚本的名称 20_Interface_New.jmx。
2、不可删除build.xml文件
4、每次从Git拉取拉取代码,修改脚本后再次上传到Git即可,每次构建将自动拉取Git的代码运行

为何Jenkins需要用到Git的秘钥,详见文章:https://www.cnblogs.com/syw20170419/p/10732826.html
常看的网站:
github的SSH 秘钥说明:https://help.github.com/en/articles/about-ssh
查看/修改Jenkins目前的时区:https://www.cnblogs.com/jwentest/p/7715786.html
查看Jenkins的配置信息:http://192.168.0.167:8080/jenkins/systemInfo
官网给出修改时区的建议:https://wiki.jenkins.io/display/JENKINS/Change+time+zone
世界时区列表:https://www.jianshu.com/p/3d99df03f540
定时任务(比较全的介绍定时时间的设置):http://www.cnblogs.com/ycyzharry/p/7598337.html
| 1.作者:Syw 2.出处:http://www.cnblogs.com/syw20170419/ 3.本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 4.如果文中有什么错误,欢迎指出。以免更多的人被误导。 |
jmeter+jenkins+git+ant的更多相关文章
- ant+jmeter+jenkins+git持续集成以及邮件报告展示
前序准备工作: ant--下载地址:http://ant.apache.org/bindownload.cgi jmeter--下载地址:http://jmeter.apache.org/downlo ...
- 基于jmeter,jenkins,ANT接口,性能测试框架
背景 公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的 ...
- maven+jmeter+jenkins集成
马上要国庆了,最近比较忙,但是感觉忙的效率很一般,之前写过ant的集成,这两天研究了下maven,其中核心的插件便是jmeter-maven-plugin,要想了解更多的朋友,可以自行去官网wiki学 ...
- Jmeter+jenkins接口性能测试平台实践整理(二)
本篇为Jmeter+jenkins+Ant方式执行性能测试 1.设置JDK,ANT环境变量: 2.build.xml文件: <?xml version="1.0" encod ...
- ant jmeter jenkins 实现自动化测试
编者按: 本文核心的关键是ant去调用build.xml 执行自动化测试任务. bulid.xml 文件的内容按照注释修改为你自己服务器相关信息. 配置完成后一定要手动在服务器上执行一次,确保你配置的 ...
- JMeter接口测试系列:Jmeter+jenkins+ant 的自动化构建
在JMeter接口测试不断深入的过程中,发现可以和jenkins和ant一起搭配进行自动化的构建.下面是jmeter自动化构建的整理笔记. 准备环境 需要本机上确定安装了jmeter.ant和jenk ...
- ant+jmeter+jenkins接口自动化测试一
[Jmeter篇]jmeter+Ant+Jenkins接口自动化测试集成(一) 橙子探索测试发表于橙子探索测试订阅 90 一.简介 1.什么是ant? ant是构建工具,把代码从某个地方拿来,编译,再 ...
- Jmeter+Jenkins持续集成(Ant运行脚本)
Jmeter接口测试脚本运行后生成的是jtl(xml)格式的文件,这些文件不具备可读性,所以我们要把他转化为可以阅读的html格式报告. Ant是一个功能强大的打包编译工具.我们使用他的目的是将xml ...
- Postman+newman+jenkins+git实战
一.接口分类,流程,用例设计 接口分类: 外部接口:被测系统与外部其他系统之间的接口. 承保系统(被测系统),核算系统. 内部接口:被测系统内部各个子模块之间的接口. 承保系统(A模块,B模块) 测试 ...
随机推荐
- VirtualBox网络之仅主机(Host-Only)网络
https://blog.csdn.net/dkfajsldfsdfsd/article/details/79441874
- 【spring Boot】spring boot获取资源文件的三种方式【两种情况下】
首先声明一点,springboot获取资源文件,需要看是 1>从spring boot默认的application.properties资源文件中获取 2>还是从自定义的资源文件中获取 带 ...
- Java基础第三天--内部类、常用API
形参和返回值 抽象类名作为形参和返回值 方法的形参是抽象类名,其实需要的是该抽象类的子类对象 方法的返回值是抽象类名,其实返回的是该抽象类的子类对象 接口名作为形参和返回值 方法的形象是接口名,其实需 ...
- linux系统编程相关
基本的概念:程序,进程,并发,单道程序设计,多道程序设计,时钟中断. 存储介质:寄存器(操作系统的位数是针对寄存器而言的,32位识字节,64位就是8字节).缓存cache.内存,硬盘,网络. cpu的 ...
- jquery文件上传版 插件
/*! * jQuery Form Plugin * version: 4.2.2 * Requires jQuery v1.7.2 or later * Project repository: ht ...
- 第二十五篇 jQuery 学习7 获取并设置 CSS 类
jQuery 学习7 获取并设置 CSS 类 jQuery动态控制页面,那么什么是动态呢?我们就说一下静态,静态几乎又纯html+css完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态 ...
- IntelliJ IDEA(Community版本)本地模式的下载、安装及其使用
对于初学者来说可以先使用免费的社区版本练练手. ideaIC-2017.3.5——>社区版 ideaIU-2017.3.5——>旗舰版 一.IntelliJ IDEA(Community版 ...
- idea tomcat 乱码问题的解决及相关设置
问题,在idea中出现乱码问题,以前没有的,好像在设置系统代码为utf8之后就出现了,于是尝试了一系列办法,希望这些办法对您有帮助. 先看一下乱码的样式. 设置办法 1.在tomcat Server中 ...
- Hadoop入门到实战全套大数据Hadoop学习视频
资料获取方式,关注公总号RaoRao1994,查看往期精彩-所有文章或者后台回复[Hadoop]获取,即可获取资源下载链接 更多资源获取,请关注公总号RaoRao1994
- mac-svn代码管理
一.mac下svn管理代码 //1.打开命令行工具,cd 到要拉取的代码放置位置 //2.从svn上拉取项目代码:svn checkout svn项目地址 (--username=XXX --pass ...