前言

搭建jmeter+ant+jenkins环境有些前提条件,那就是要先配置好java环境,本地java环境至少是JDK8及以上版本,最好是JAVA11或者JAVA17等较高的java环境,像jenkins这种持续构建工具基本都在向上兼容JAVA的环境,以前的JAVA8或者以下版本可能在运行jenkins等时可能会有异常导致执行失败或者提示java版本太低需要更新版本等,建议本地电脑环境装两套JAVA环境,一个JAVA8、一个JAVA17,需要使用时根据配置的环境变量即可切换JAVA版本

jmeter:开源接口和压力测试工具,基于java开发,运行需要java环境

ant:Apache Ant是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。Ant运行时需要一个XML文件(构建文件),运行需要java环境

jenkins: Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成,运行需要java环境

一、本地JAVA环境安装配置,安装JAVA8和JAVA17

分别下载JAVA8和JAVA17版本,JAVA官网下载,地址:

https://www.oracle.com/java/technologies/downloads/#jdk20-windows

按如上地址选择下载JDK17,windows版本安装即可,JAVA8历史版本安装自行下载安装即可

如我本地已经安装了JDK8和JDK17,安装路径如下:

本地安装完毕JAVA8和JAVA17后,为了能切换两个版本,需要分别配置如下环境变量:

  1. 变量名:JAVA_HOME  值:%JAVA_HOME17%,若需要切换为JAVA8,将值改为:%JAVA_HOME8%即可

  1. 变量名:JAVA_HOME8  值:C:\Program Files\Java\jdk1.8.0_91,值是本地JAVA8的安装路径

  1. 变量名:JAVA_HOME17  值:C:\Program Files\Java\jdk-17,值是本地JAVA17的安装路径

  1. 变量名:CLASSPATH 值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%ANT_HOME%\lib;

  1. 变量名:PATH ,将值:%JAVA_HOME%\bin移动到最前面即可

如上环境变量配置完毕后,打开cmd,查看JAVA当前版本,出现如下即可:

如上是显示当前环境是JAVA17,若切换到JAVA8,修改变量名:JAVA_HOME 将值改为:%JAVA_HOME8%,然后再次打开cmd查看JAVA运行版本:

二、安装和配置Jmeter

官网下载安装,安装后配置能正常启动jmeter的GUI界面即可进行接口和脚本开发

三、安装和配置ant

ant下载地址:http://ant.apache.org/

下载最新的ZIP压缩包即可,如下图:

版本:1.10.13官网明确说明了需要JAVA8及其以上的运行环境,JAVA环境低于JAVA8的需要升级

下载后在本地指定路径下下解压后,配置环境变量,配置如下:

ANT_HOME:F:\apache-ant-1.10.13-bin\apache-ant-1.10.13

path:%ANT_HOME%\bin;

classpath:%ANT_HOME%\lib;

配置完后,cmd窗口查看ant版本,显示如下即ant安装ok

四、jmeter + ant配置

  1. 将**apache-jmeter-5.4.1\extras下面的ant-jmeter-1.1.1的jar包到ant的lib目录,如下图:**

  1. 在本地一个磁盘路径下,新建一个xml文件:build_test.xml,如我的路径:D:\apache-jmeter-5.4.1\test

xml文件,内容如下:

xml文件中指定内容按实际的配置修改即可

同时也将需要执行的jmx脚本文件放置在该目录下

  1. 修改jmeter下jmeter.properties配置

jmeter.properties配置文件路径:D:\apache-jmeter-5.4.1\apache-jmeter-5.4.1\bin

将jmeter.save.saveservice.output_format=csv修改为:jmeter.save.saveservice.output_format=xml

  1. cmd窗口运行

cmd切换到xml文件的目录下,执行命令:ant -buildfile build_test.xml

执行结果显示构建成功,即jmeter和ant环境配置ok

构建成功后,会在xml文件所在的目录下生成html和jtl的文件,如下图:

html文件可以直接浏览器打开查看测试报告,jtl文件就是jmeter的聚合报告数据文件,可以使用jmeter加载打开jtl文件查看聚合报告

看一下对应的测试报告:

五、jenkins安装和配置持续构建项目

  1. 安装jenkins

jenkins官网下载安装:https://www.jenkins.io/download/,选择windows版本

安装过程中有个端口和JDK运行环境设置,设置的端口不被系统服务占用即可

安装完毕后,浏览器输入:http://localhost:8080,访问jenkins

第一次访问jenkins需要解锁,管理员密码在日志文件可以查看到

拷贝到密码输入框即可,登录后的效果:

  1. 安装相应的插件

进入插件管理页面,切换到第二个菜单

安装插件:

DingTalk    -----------发送钉钉消息的插件

HTML Publisher plugin   ---------生成可视化html测试报告的插件

Ant In Workspace    -------------ant构建配置插件

安装完毕后,查看第三个菜单,查看已安装的插件,

安装完毕插件后,最好重启一下jenkins,后面jenkins构建配置才能选择对应的插件,重启jenkins只需要在浏览器jenkins服务端口后面加上restart回车后,点击yes即可等待jenkins重启,如下图:

  1. 钉钉群新建自定义机器人

在钉钉群找到群应用:机器人

进入后选择添加自定义机器人

添加后保存好Webhook和加签,用于后面在jenkins构建时配置钉钉机器人设置,如下图:

  1. 添加构建JOB,新建一个自定义风格的JOB

在jenkins插件钉钉全局配置中,配置Webhook和加签

进入构建配置,第一步,配置添加钉钉机器人,如下图:

设置构建保存时间和最大显示构建数:

在构建定时设置,主要是设置jenkins何时定时自动执行该构建项目

定时构建语法:

* * * * *(五颗星,中间用空格隔开)

第一颗*表示分钟,取值 0~59第二颗*表示小时,取值 0~23第三颗*表示一个月的第几天,取值 1~31第四颗*表示第几月,取值 1~12第五颗*表示一周中的第几天,取值 0~7,其中 0 和 7 代表的都是周日

接下来就是构建步骤配置:

最后就是构建后的报告输出配置,如下图:

以上所有配置完毕后,应用保存即可。

  1. 构建项目

等待构建执行完毕,查看构建历史和构建日志,显示BUILD SUCCESSFUL即代表成功

构建完毕后在配置路径下生成html和jtl文件,如下图:

同时可以在jenkins上查看html测试报告,如下图:

同时也会钉钉群推送构建通知,如下图:

自动构建效果:

这样就完成了

Jmeter+ant+Jenkins+钉钉机器人群通知的接口自动化测试环境的部署和自动构建,后续只需要使用jmeter完成接口测试场景测试用例的设计和脚本编写即可

基于Jmeter+ant+Jenkins+钉钉机器人群通知的接口自动化测试的更多相关文章

  1. Jmeter+Ant+Jenkins搭建持续集成的接口测试(推荐 Mark)

    转自:http://my.oschina.net/hellotest/blog/516079 目录[-] 一.Jmeter+ant 二.Jmeter+ant+Jenkins 三.Tomcat配置虚拟目 ...

  2. Jmeter+Ant+Jenkins构建接口自动化测试平台(Windows)

    一.首先先介绍下我的环境: 1. win10系统 2. ant版本:apache-ant-1.10.1(作用:执行脚本,便于后期的持续集成,下载地址:http://ant.apache.org/bin ...

  3. 关于Jmeter+Ant+Jenkins作为接口、性能自动化框架的误区

    说明:Apach-Jmeter有完善的桌面客户端,关联数据的处方方式,各种参数化的方式,各种Jar包的扩展,也可以用作抓包工具使用,当然最重要的是它是[开源!开源!开源!],重要的事说三遍,目前也有基 ...

  4. jmeter+ant+jenkins搭建接口自动化测试环境

    jmeter+ant+jenkins搭建接口自动化测试环境(基于win) 1.jmeter jmeter依赖java运行环境,所以需要提前下载jdk并配置好环境变量 官网下载(http://jmete ...

  5. 基于Jmeter+maven+Jenkins构建性能自动化测试平台

      一.目的: 为能够将相关系统性能测试做为常规化测试任务执行,且可自动无人值守定时执行并输出性能测试结果报告及统计数据,因此基于Jmeter+maven+Jenkins构建了一套性能自动化测试平台 ...

  6. 自动化测试框架【windows版】:JMeter + Ant + Jenkins

    前提条件:windows安装了jmeter.ant.jenkins 安装方法参考汇总目录中对应的博文 截图看不清的,可以调大浏览器倍数看 jenkins驱动ant执行,ant驱动jmeter执行 an ...

  7. 自动化测试框架【linux版】:JMeter + Ant + Jenkins

    前提条件:linux安装了jmeter.ant.jenkins 安装方法参考汇总目录中对应的博文 截图看不清的,可以调大浏览器倍数看 jenkins驱动ant执行,ant驱动jmeter执行 ant调 ...

  8. jmeter--接口自动化jmeter+ant+jenkins

    的 一.介绍 接口自动化工具:jmeter+ant+jenkins 流程: -1.jmeter已录制或手动设置好脚本后 -2.配置ant,使用Ant工具,进行批量执行jmeter的脚本 -3.使用Je ...

  9. 【此处有干货~】jmeter+ant+jenkins持续集成配置及过程中问题解决思路

    本人是一枚工作近三年的小测试,大学正好专业为软件测试,在工作中用到最多的是功能测试.接口测试.压力测试.偶尔会涉及到性能测试......(小白,很多观念技术跟大佬差距太大,勿喷) 在接口测试过程当中, ...

  10. Jenkins环境搭建(2)-搭建jmeter+ant+jenkins自动化测试环境

    一直想在持续集成方向学习并研究一番,近期正准备结合jmeter+ant+jenkins做自动化接口测试,在学习的同时,正好实践一番,毕竟实践才是真理. 在搭建jmeter+ant+jenkins环境有 ...

随机推荐

  1. 博客与AI

    最近AI自动生成技术文章和答案在圈子里面引起了很大轰动,Stack Overflow暂时拒绝接收GPT生成的结果.我也经常性地浏览或者编写博客,但是最近我使用new bing或者ChatGPT的过程中 ...

  2. Unity3D中的Attribute详解(三)

    上一篇我们对系统的Attributes进行了MSIL代码的查看,了解到了其本质就是一个类的构造函数.本章我们将编写自己的Attributes. 首先我们定义书的属性代码,如下: [AttributeU ...

  3. SSM整合的所有配置(配置类)

    导入依赖坐标pom.xml <dependencies> <dependency> <groupId>junit</groupId> <artif ...

  4. 四月十六号java基础知识

    1.如果没有一个机制来限制对类中成员的访问,则很可能会造成错误的输入如果在类的成员声明前面加上修饰符private,则无法从类的外部访问到该类内部的成员,而只能被该类自身访问和修改,而不能被任何其他类 ...

  5. Express实现定时发送邮件

    在开发中我们有时候需要每隔 一段时间发送一次电子邮件,或者在某个特定的时间进行发送邮件, 无需手动去操作,基于这样的情况下我们需要用到了定时任务,一般可以写个定时器,来完成相应的需求,在 node.j ...

  6. RDIFramework.NET代码生成器全新V5.1版本发布

    RDIFramework.NET代码生成器介绍 RDIFramework.NET代码生成器,代码.文档一键生成. RDIFramework.NET代码生成器集代码生成.各数据库对象文档生成.数据库常用 ...

  7. 深度学习基础5:交叉熵损失函数、MSE、CTC损失适用于字识别语音等序列问题、Balanced L1 Loss适用于目标检测

    深度学习基础5:交叉熵损失函数.MSE.CTC损失适用于字识别语音等序列问题.Balanced L1 Loss适用于目标检测 1.交叉熵损失函数 在物理学中,"熵"被用来表示热力学 ...

  8. day05-优惠券秒杀01

    功能03-优惠券秒杀01 4.功能03-优惠券秒杀 4.1全局唯一ID 4.1.1全局ID生成器 每个店铺都可以发布优惠券: 当用户抢购时,就会生成订单,并保存到tb_voucher_order这张表 ...

  9. Godot报错 Node not found: "SubViewport"[一问随笔]

    问题: 使用TextureRect显示SubViewport的内容,结果发生了如下报错 E 0:00:01:0007 get_node: Node not found: "SubViewpo ...

  10. 【必知必会的MySQL知识】④DCL语言

    目录 一.概述 二 .授权 2.1 语法格式 2.2 语法说明 2.3 权限类型 2.4 权限级别 三. 回收权限 3.1 语法格式 3.2 语法说明 3.3 注意事项 四 .实践操作 一.概述 数据 ...