如何让你的 Jmeter+Ant 测试报告更具吸引力?

news/2024/4/19 0:41:58

目录

引言

一、安装apache-Ant

二、Jmeter准备

3、生成测试报告

4、JMeter动态参数处理逻辑是什么?

5、JMeter是怎么做API自动化测试的?

结语


引言

想象一下,你辛苦搭建了一个复杂的网站,投入了大量的时间和精力进行开发和测试。当你终于完成了测试并准备生成测试报告时,你可能会发现这个过程相当乏味,而对于其他人来说,它可能也不那么吸引人。

但是,不要放弃!因为在本文中,我们将分享如何使用 Jmeter+Ant 生成测试报告,并让它更具吸引力。

JMeter生成测试报告使用的是Ant(Maven)构建工具来生成HTML的测试报告。

【Jmeter教程:留言777免费获取】

讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!

一、安装apache-Ant

1、解压apache-ant安装包
ant是Java语言的构建工具 Apache Ant - Binary Distributions


2、配置环境
①:复制ant中bin目录的路径放到Path变量中(注意以英文的分号和前面的隔开)
E:\workplace\Ant\apache-ant-1.9.14\bin

3、验证ant否安装成功
控制台指令:ant -v

二、Jmeter准备

1、jmeter目录下新建tests文件夹(tests文件夹里面存储测试脚本和测试报告),在tests文件夹下新建report和script文件夹,再在report文件夹下新建html和jtl文件夹
2、把jmeter保存的测试脚本保存到script下
目录结构如下图所示:

把jmeter下的extras文件下的ant-jmeter-1.1.1.jar复制,粘贴到ant下的lib文件中编写build.xml文件,把build.xml放在jmeter的tests的文件下在jmeter的bin目录下找到jmeter.properties用记事本打开,CTRL+F找到#jmeter.save.saveservice.output_format=csv,然后把井号取消,等号后面改为xmlactivation.jar, commons-email-1.2.jar,   mail.jar,这三个文件放在ant的lib目录下完善build.xml文件:
build.xml文件定义了
A、执行哪个测试脚本
B、实现自动发送脚本(邮箱)
C、自动生成测试报告定义jmeter地址 加上接受报告的qq邮箱 要执行的测试脚本的名字 自动生成测试报告在控制台进入到tests,输入ant,这时在report下的html中,会有测试报告

把build.xml放在jmeter的tests的文件下:



3、生成测试报告

ant执行的条件是需要有build.xml的文件的,build.xml文件里面主要编写三个内容:
1、定义了被执行的测试脚本
2、定义了测试报告的目录
3、定义了自动发送邮件

HTTP COOKIE管理器(SESSION会话对象--》代码级别):
1、所有请求之间的COOKIE是共享的
2、所有请求之间的COOKIE共享的同时底层的TCP连接只建立一次连接

11表示匹配到的第1个值赋给引用名称。


4、JMeter动态参数处理逻辑是什么?

以登录为案例,登录成功后返回的TOKEN每次都是不一样的,这个值就是动态参数,那么在登录成功后的接口中(如首页)需要调用到这个TOKEN:
1、在登录的接口中添加后置处理器中的JSON提取器,定义一个变量获取登录成功后返回的token的值
2、在下个接口(如首页)中通过${}来调用这个变量
3、执行线程组中的任务,就能够实现参数的上下关联

常用的组件:
1、HTTP信息头管理器
2、COOKIE管理器
3、查看结果树
4、JSON提取器/正则表达式提取器
5、JSON断言以及响应断言
6、HTTP请求默认值
7、用户定义的变量(分离的是公共的数据)

5、JMeter是怎么做API自动化测试的?

1、首先在JMeter里面创建测试计划,在测试计划里面创建线程组
2、在线程组里面添加HTTP的请求,以及添加API的测试用例
3、编写测试用例结束后,结合Ant构建工具,编写build.xml文件(执行脚本,测试报告目录,自动发送邮件)
4、在build.xml文件的目录下执行ant,就会自动执行
5、最后整合到Jenkins持续集成的平台,那么在下个版本中,只需要点击构建就能够自动化的执行

针对一个服务,你怎么测试?
1、正常功能
2、异常功能
A、请求参数是必须填写,但是没有带,后台有没有做判断
B、请求参数的数据类型是否做了判断
C、特定参数需要特定的值
D、请求参数超过长度的限制
3、安全测试,主要指的是服务是否做了认证授权
4、性能测试(这个服务同时多少个人可以访问)
5、稳定性测试(指的是验证一个服务的稳定性)

结语

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

 获取方式:留言【Jmeter学习教程】即可

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!


http://www.ppmy.cn/news/73387.html

相关文章

Linux 安装MySQL-5.7.30

本文总结在Linux上安装mysql数据库的方法以及遇到的问题。使用的环境信息 MySQL 5.7.30CentOS Linux release 7.6.1810 (Core) 1.官网下载MySQL 进入官网https://www.mysql.com/ 从下载页面下载社区版本其中社区版本免费,免费的午餐不提供技术支持. 页面中MySQL E…

第三十七章 弹灵守则第三十七条

“要不要一起玩?”那个跳来跳去的小男孩冲巴哥奔嘻嘻一笑。 “唔~” “很简单,这叫做玛丽的房间。”小男孩突然从她头顶跃过,脚尖点到她身后一块灰色方格。 “亮灰。” “D3D3D3。” “哈哈,你错了!”头顶扎着一根小辫…

RK3568平台开发系列讲解(驱动基础篇)RK平台RTC的使用

🚀返回专栏总目录 文章目录 一、HYM8563模块二、HYM8563模块三、接口使用3.1 sysfs 接口3.2 procfs 接口3.3 ioctl 接口沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将对RK RTC的使用进行学习。 一、HYM8563模块 ROC-RK3568-PC开发板采用HYM8563作为RTC(Rea…

usb摄像头驱动-core层USB集线器(Hub)驱动

usb摄像头驱动-core层USB集线器(Hub)驱动 文章目录 usb摄像头驱动-core层USB集线器(Hub)驱动usb_hub_inithub_probehub_eventport_eventhub_port_connect_changehub_port_connectusb_new_deviceannounce_device 在USB摄像头驱动中…

二分查找怎么写? 你真的弄懂二分查找了吗

大家好,我是三叔,很高兴这期又和大家见面了,一个奋斗在互联网的打工人。 二分查找是一种高效的查找算法,也是Java中最基础的算法之一,常用于已排序数组中的元素查找。本篇博客将介绍二分查找的原理、应用场景以及实现…

多目标优化算法求解无人机三维路径规划

一、无人机模型 无人机三维路径规划是无人机在执行任务过程中的非常关键的环节,无人机三维路径规划的主要目的是在满足任务需求和自主飞行约束的基础上,计算出发点和目标点之间的最佳航路。 1.1路径成本 无人机三维路径规划的首要目标是寻找起飞点和目…

tomcat加载顺序

一、 1、启动一个WEB项目的时候&#xff0c;WEB容器会去读取它的配置文件web.xml&#xff0c;读取<listener>和<context-param>两个结点。 2、紧急着&#xff0c;容创建一个ServletContext&#xff08;servlet上下文&#xff09;&#xff0c;这个web项目的所有部…

C++应届生程序员进入公司需要注意的五个细节,希望对大家有帮助

今天想跟大家分享一下应届C程序员实习生在进入公司后需要注意哪些问题。 C程序员是一种非常重要的职业&#xff0c;主要负责使用C语言编写各种软件程序。C是一种面向对象的编程语言&#xff0c;常用于开发操作系统、游戏引擎、嵌入式系统、图像处理等领域。因此&#xff0c;C程…

秘塔写作猫

秘塔写作猫是集AI智能写作、多人协作、改写润色、文本校对等功能为一体的AI原生创作平台&#xff0c;可以帮助不同群体大幅提升写作效率和生产力。 接下来小编就带大家了解一下该软件具体的一些功能&#xff0c;不论你是学生、上班族还是自媒体从业者等&#xff0c;该工具绝对可…

【Linux】ko文件查询内部信息方法

objdump命令 在 Linux 中&#xff0c;可以使用 objdump 命令来反汇编 ko 文件并查看其中的宏定义值。 以下是如何使用 objdump 命令查看 ko 文件中的宏定义值的示例&#xff1a; objdump -d <ko文件> | grep <宏名称>其中&#xff0c;-d 参数表示反汇编目标文件…

【物联网技术对生活的影响与展望】

随着科技日新月异的发展&#xff0c;物联网&#xff08;IoT&#xff09;技术正在快速地影响着我们的生活。它是将各种设备和物品连接在一起&#xff0c;通过互联网使它们可以相互交流和传递数据的技术。它的应用范围广泛&#xff0c;可以涵盖从智能家居到工业网络的各个领域。 …

2-《Java进阶》

[TOC](2-《Java进阶》 一. java多线程&#xff08;非常重要&#xff09;1.1. 线程java多线程实现方式主要有&#xff1a;1.继承Thread 2.实现Runnable3.实现CallableRunnable 与 Callable的区别&#xff1a;1.2. 线程的状态有哪些&#xff1f;1.3. 线程的状态转换及控制1.4. Ja…

ES6中Promise对象

1.Promise 说明&#xff1a;Promise是异步编程的一种解决方案。简而言之&#xff0c;也就是存者未来发生的事件的容器。 Promise提供统一的API,各种异步操作都可以用同样的方法进行处理。 特点&#xff1a;对象的状态不受外界影响。Promise对象代表一个异步操作&#xff0c;存…

Linux MISC 驱动实验

misc 的意思是混合、杂项的&#xff0c;因此 MISC 驱动也叫做杂项驱动&#xff0c;也就是当我们板子上的某 些外设无法进行分类的时候就可以使用 MISC 驱动。MISC 驱动其实就是最简单的字符设备驱 动&#xff0c;通常嵌套在 platform 总线驱动中&#xff0c;实现复杂的驱动。 M…

Less和sass安装及使用

CSS预处理器 由来 CSS本身不是一种编程语言。你可以用它开发网页样式&#xff0c;但是没法用它编程。换句话说&#xff0c;CSS基本上是设计师的工具&#xff0c;不是程序员的工具。它并不像其它程序语言&#xff0c;比如说JavaScript等&#xff0c;有自己的变量、常量、条件语…

C#中使用git将项目代码上传到远程仓库的操作

一、远程仓库创建操作&#xff08;远程仓库使用的是gitHub&#xff09; 1、登录GitHub官网&#xff0c;注册登录账号后&#xff0c;点击创建仓库 2、仓库名称命名&#xff0c;如下所示&#xff1a; 3、创建成功如下所示&#xff1a;获得https协议&#xff08;https://github.c…

JuiceFS 在多云存储架构中的应用 | 深势科技分享

2020 年末&#xff0c;谷歌旗下 DeepMind 研发的 AI 程序 AlphaFold2 在国际蛋白质结构预测竞赛上取得惊人的准确度&#xff0c;使得 “AI 预测蛋白质结构” 这一领域受到了空前的关注。今天我们邀请到同领域企业&#xff0c;深势科技为大家分享其搭建基础平台时的实践与思考。…

在阿里做了6年软件测试,4月无情被辞,想给划水的兄弟提个醒

先简单交代一下背景吧&#xff0c;某不知名 985 的本硕&#xff0c;17 年毕业加入阿里&#xff0c;以“人员优化”的名义无情被裁员&#xff0c;之后跳槽到了有赞&#xff0c;一直从事软件测试的工作。之前没有实习经历&#xff0c;算是6年的工作经验吧。 这6年之间完成了一次…

python 图片保存成视频

&#x1f468;‍&#x1f4bb;个人简介&#xff1a; 深度学习图像领域工作者 &#x1f389;工作总结链接&#xff1a;https://blog.csdn.net/qq_28949847/article/details/128552785 链接中主要是个人工作的总结&#xff0c;每个链接都是一些常用demo&#xff0c…

洛谷 池塘计数 floor-fill BFS 模板题

&#x1f351; OJ专栏 &#x1f351; P1596 Lake Counting 题面翻译 由于近期的降雨&#xff0c;雨水汇集在农民约翰的田地不同的地方。我们用一个 N M ( 1 ≤ N ≤ 100 , 1 ≤ M ≤ 100 ) N\times M(1\leq N\leq 100, 1\leq M\leq 100) NM(1≤N≤100,1≤M≤100) 的网格图表…