Jenkins+Ant+Jmeter接口自动化集成测试

一、Jenkins安装配置

1、安装配置JDK1.6+环境变量;

2、下载jenkins.war,放入C:\jenkins目录下,目录位置随意;

Jenkins启动方法:

cmd进入Jenkins目录下,执行java -jar jenkins.war

浏览器输入:localhost:8080可以访问Jenkins表示配置成功;

二、Ant安装配置

1、下载apache-ant-1.9.6;放入E盘,如E:\apache-ant-1.9.6,目录位置随意

2、配置环境变量:

ANT_HOME E:\apache-ant-1.9.6

path E:\apache-ant-1.9.6

classpath E:\apache-ant-1.9.6

3、验证Ant配置是否成功;

cmd下输入Ant提示如下表示配置成功:

Buildfile: build.xml does not exist!

Build failed

三、配置xml文件

1、Jmeter目录位置:D:\tools\apache-jmeter-2.11,在jmeter中建立demo文件夹,demo中创建build.xml文件,需要配置Jmeter目录、生成报告的路径,报告的格式和脚本目录,内容如下:

python 复制代码
<?xml version="1.0" encoding="UTF8"?>
 
<project name="ant-jmeter-test" default="run" basedir=".">
 
    <tstamp>
 
        <format property="time" pattern="yyyyMMddhhmm" />
 
    </tstamp>
 
    <property environment="env"/>
 
    <property name="ReportName" value="TestReport" />
 
    <!-- 本地的 Jmeter 目录-->
 
    <property name="jmeter.home" value="D:\tools\apache-jmeter-2.11" />
 
    <!-- jmeter生成报告的路径-->
 
    <property name="jmeter.result.dir" value="${env.WORKSPACE}/results/${env.BUILD_ID}" />
 
    <!-- 生成jtl、html格式的报告,以构建ID命名--> 
 
    <property name="jmeter.result.jtlName" value="${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.jtl" />
 
    <property name="jmeter.result.htmlName" value="${env.WORKSPACE}/results/${env.BUILD_ID}/${env.BUILD_ID}.html" />
 
    <target name="run">
 
        <echo message="start..."/>
 
        <antcall target="clean" />                       
 
        <antcall target="test" />
 
        <antcall target="report" />
 
    </target>
 
    <target name="clean">
 
        <mkdir dir="${env.WORKSPACE}/results/${env.BUILD_ID}" />
 
    </target>
 
    <target name="test">
 
        <taskdef name="jmeter" classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask" />
 
        <jmeter jmeterhome="${jmeter.home}" resultlog="${jmeter.result.jtlName}">
 
            <!-- 声明要运行的脚本和此目录下的jmeter脚本-->
 
            <testplans dir="D:\tools\apache-jmeter-2.11\demo" includes="login.jmx" />
 
            <property name="jmeter.save.saveservice.output_format" value="xml"/>
 
        </jmeter>
 
    </target>
 
    <target name="report">
 
        <xslt in="${jmeter.result.jtlName}"
 
              out="${jmeter.result.htmlName}"
 
              style="${jmeter.home}/extras/jmeter-results-detail-report_21.xsl" />
 
    </target>
 
</project>

其中{env.WORKSPACE}/results/{env.BUILD_ID}/${env.BUILD_ID}.jtl和

{env.WORKSPACE}/results/{env.BUILD_ID}/${env.BUILD_ID}.html生成的报告位置在:

C:\Users\Administrator\.jenkins\jobs\test\workspace\results目录下,每次进行Jenkins构建的时候,都会生成一个新的构建编号目录和结果报告;

2、将jmeter测试脚本放入demo目录下,当然放入其他位置也可以,build.xml中需要配置jmeter脚本存放路径的对应位置。

四、构建Jenkins项目

1、启动Jenkins,浏览器输入localhost:8080进入管理界面,点击新建;

2、输入项目名称:Test_demo,选择构建一个自由风格的软件项目,点击OK;

3、勾选丢弃旧的构建,配置如下:

4、构建,增加构建步骤选择Invoke Ant,Targets输入run,点击高级,Build File输入build.xml文件路径,保存;

5、返回主页可以看到新建的项目,点击构建即可启动测试;

6、左侧可以看到启动状态及构建编号;

7、进入构建编号目录C:\Users\Administrator\.jenkins\jobs\Test_demo\workspace\results\60下即可查看jmeter脚本运行的报告;

五、使用Tomcat查看测试结果:

1、修改build.xml文件html报告生成的路径,report文件在demo路径下,修改如下:

复制代码
<property name="jmeter.result.htmlName" value="report/report.html" />

2、配置为tomcat的虚拟目录

a、配置server.xml

打开Tomcat目录下的/conf/server.xml文件,在Host标签之间加入下面内容。

复制代码
 <Context path="/test/report" docBase="/test/report " reloadable="true" debug="0"/>

path:工程名称+文件路径,当访问path目录下的文件时,实则访问docBase目录下的文件。

docBase:文件的真实路径。注意这里如果有文件长传,则将上传的文件路径设置为docBase,而不是path。

b、修改tomcat端口

Tomcat端口8080已经被Jenkins占用,则需要修改端口,打开Tomcat目录下的/conf/server.xml文件,将connector port修改成8088

python 复制代码
<Connector port="8088" protocol="HTTP/1.1"
 
               connectionTimeout="20000"
 
               redirectPort="8443" /

c、配置web.xml

打开Tomcat目录下的/conf/web.xml,将listings的属性设置为True。

python 复制代码
<servlet>
 
        <init-param>
 
            <param-name>listings</param-name>
 
            <param-value>true</param-value>
 
        </init-param>
 
        <load-on-startup>1</load-on-startup>
 
    </servlet>

访问localhost:8088/report即可访问结果报告。

当然Jenkins的功能远不止这些,还有很多强大的地方等着你去发现。


【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战

四、App自动化项目实战

五、一线大厂简历

六、测试开发DevOps体系

七、常用自动化测试工具

八、JMeter性能测试

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

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

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
其实防守也摸鱼11 分钟前
教育信息技术应用创新---基础软件信息赛(题库)
大数据·运维·人工智能·web安全·自动化
小白的后端世界24 分钟前
跨境电商数据分析与 AI Agent 自动化:从指标体系到决策闭环
人工智能·深度学习·数据分析·自动化
天空属于哈夫克343 分钟前
企业微信 API 自动发送消息:从流程到实战
python·自动化·企业微信
xixiaoyunya1 小时前
Zigbee智能家居完整组网指南:从局域网自动化到外网远程控制的技术实现
自动化·智能路由器·智能家居
adinnet20262 小时前
工厂生产决策辅助:辅助分析各工序成本与效率数据
人工智能·自动化
测试者家园9 小时前
为什么意图驱动测试是自动化测试的下一站,而不是替代品
自动化测试·软件测试·人工智能·持续测试·ai赋能·智能化测试·软件测试变革
志栋智能10 小时前
超自动化运维如何支持合规审计?
运维·自动化
学术 学术 Fun11 小时前
如何用 API 与 Webhook 批量把图表图片转换成 VSDX
python·自动化·api·visio
朗宇芯工控13 小时前
注塑机械手自动化上下料原理、流程与应用优势
机器人·自动化·制造·工业·运动控制系统
2601_9623049116 小时前
把出片接进自动化流水线:2026 年批量 AI 视频生成工具的脚本契约与同类项目对照
运维·人工智能·自动化