性能测试(8)——Jmeter基础入门

本文涉及的产品
性能测试 PTS,5000VUM额度
简介: Get、Post请求(以个人学生管理系统为例)在线程组中右键新建“用户定义的变量”,添加键值对,如果在请求中需要使用到该变量,则在“值”这一栏下,填写${该变量名称},来引用该变量的值。

Get、Post请求(以个人学生管理系统为例)
在线程组中右键新建“用户定义的变量”,添加键值对,如果在请求中需要使用到该变量,则在“值”这一栏下,填写${该变量名称},来引用该变量的值。
image.png

用户自定义的变量
在一个线程组中添加HTTP请求默认值,使此线程组里面的每一个请求都默认使用这个请求值,不需要再次填写请求基本信息
image.png

HTTP默认请求值
(一)以下为请求路径,以及请求参数示例:
(二)在Jmeter中,新建线程组,在线程组中新建HTTP请求,以下为填写要求
(三)演示Get请求
image.png
(四)演示Post请求
这里引用HTTP请求默认值,以及用户自定义变量,则不再描述
image.png

Get请求
学生管理系统后台接口 localhost:8080
登陆页面请求接口 localhost:8080/Login/check
账号 admin
密码 123
  • 至此Jmeter的GET、POST请求已经完成了,这里需要提醒以下,GET请求和POST请求的差别:
    GET请求会把用户输入的参数显示在地址栏中,则存在安全隐患
  • 另外请求显示成功并且状态码为200时,不代表这个接口是测试通过并且返回数据的,仅仅代表这个接口能够接收到请求,测试是否返回数据需要查看“响应数据”一栏的数值与预期是否一致。
  • 在输入所有请求路径、请求值等时,不要输入空格,否则运行时就弹出URL语法错误

Jmeter基础知识—请求参数化

  1. 添加配置元件中的CSV数据文件设置,在文件中填入相关参数,如下:
    image.png
  2. 添加http请求,在请求中把参数和配置文件关联起来
    image.png
  3. 在线程组中设置循环次数,一般配置文件中有多少条数据,我们就设置为循环多少次
  4. 运行,查看结果树,如果参数比较多,可以勾选上“仅错误日志”

Jmeter基础知识—查看结果

断言种类繁多,如以下,本章主要讲解响应断言,Json断言,Xpath断言,其余自行了解
image.png
image.png
添加完断言后,运行http请求,如果添加的断言在响应结果中,那么这个http请求则显示为绿色标记通过,如果响应结果中没有自行添加的断言,那么这个请求则不通过标红

响应断言
  • 通过表达式获取json返回值中的数据,通过判断是否包含有指定的数据来进行结果判断处理,非常适合返回值为json类型的接口
    image.png

    Json断言
  • 通过控制台中复制Xpath进行筛选,查看结果
    image.png

    Xpath断言
  • 1.打开jmeter请求中的高级选项,输入项目地址,以及Fiddler的端口号,默认为8888
    image.png
    2.运行后,打开Fiddler即可抓到这条请求的包,里面有这条请求的所有详细数据
    image.png
    结合Fiddler抓包可以精准的获得这条数据的一切信息。

    Jmeter结合Fiddler查看结果

    1.打开jmeter请求中的高级选项,输入项目地址,以及Fiddler的端口号,默认为8888
    image.png
    2.运行后,打开Fiddler即可抓到这条请求的包,里面有这条请求的所有详细数据
    image.png
    结合Fiddler抓包可以精准的获得这条数据的一切信息。

    Jmeter基础知识—察看结果树

  • 在察看结果树中,选中CSS选择器测试

    察看结果树之CSS_jQuery_Tester(CSS选择器测试)使用

    选择器和属性:这里填写你需要过滤的CSS样式组件以及样式参数,例如
    当需要拿到name属性的值时,我们只需要在选择器输入“a[class=text]”,在属性中输入"name"
    即可拿到name属性的值,这里的结果为hello,这个选择器的使用适合熟悉前端的测试人员,可以拿到筛选后组件中需要所有的属性的值
    image.png

    察看结果树之HTML和HTML Source Formatted

    (一)HTML:Jmeter加载网页的样式,展现出网页的效果
    image.png
    (二)HTML Source Formatted:将网页的代码全部格式化,展现代码
    image.png

    察看结果树之Json和Json Path Tester

    (一)Json:将接口返回的响应数据进行json数据的格式化展示
    image.png

(二)Json Path Tester:返回json数据,通过json表达式对json数据进行筛选提取
image.png

察看结果树之Xpath Tester

1.在网页中按F12打开控制命令台,选择需要的图标样式,右键copy它的Xpath
image.png
2.在jmeter的结果树中选择查看Xpath tester,将xpath复制进去,即可得到筛选后的前端组件位置
image.png

察看结果树之正则表达式(RegExp Tester)

通过正则表达式筛选组件,可以单独学习正则表达式,然后再学习本章,通过左边界和右边界对结果进行限制,在中间放置正则表达式进行筛选,正则表达式(.*)表示匹配所有符合条件的
image.png

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
9天前
|
测试技术 数据库 UED
Python 性能测试进阶之路:JMeter 与 Locust 的强强联合,解锁性能极限
【9月更文挑战第9天】在数字化时代,确保软件系统在高并发场景下的稳定性至关重要。Python 为此提供了丰富的性能测试工具,如 JMeter 和 Locust。JMeter 可模拟复杂请求场景,而 Locust 则能更灵活地模拟真实用户行为。结合两者优势,可全面评估系统性能并优化瓶颈。例如,在电商网站促销期间,通过 JMeter 模拟大量登录请求并用 Locust 模拟用户浏览和购物行为,可有效识别并解决性能问题,从而提升系统稳定性和用户体验。这种组合为性能测试开辟了新道路,助力应对复杂挑战。
27 2
|
4天前
|
缓存 Java 测试技术
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
使用JMeter对项目各个接口进行压力测试,并对前端进行动静分离优化,优化三级分类查询接口的性能
谷粒商城笔记+踩坑(11)——性能压测和调优,JMeter压力测试+jvisualvm监控性能+资源动静分离+修改堆内存
|
6天前
|
移动开发 JSON Java
Jmeter实现WebSocket协议的接口测试方法
WebSocket协议是HTML5的一种新协议,实现了浏览器与服务器之间的全双工通信。通过简单的握手动作,双方可直接传输数据。其优势包括极小的头部开销和服务器推送功能。使用JMeter进行WebSocket接口和性能测试时,需安装特定插件并配置相关参数,如服务器地址、端口号等,还可通过CSV文件实现参数化,以满足不同测试需求。
31 7
Jmeter实现WebSocket协议的接口测试方法
|
9天前
|
Web App开发 Java 测试技术
自动化测试的利器:Selenium WebDriver入门与实践
【9月更文挑战第8天】在软件开发的海洋中,测试是确保我们不会溺水的那根救生索。Selenium WebDriver,作为自动化测试的明星工具,让这根救生索更加结实可靠。本文将带你快速上手Selenium WebDriver,从基础设置到实际操作,再到实战演练,让你的开发之旅更加平稳顺畅。
|
8天前
|
测试技术 持续交付 Apache
Python性能测试新风尚:JMeter遇上Locust,性能分析不再难🧐
【9月更文挑战第10天】随着软件应用的不断扩展,性能测试成为确保系统稳定运行的关键环节。本文通过对比Apache JMeter和Locust,探讨了如何在Python环境中利用这两款工具挖掘更多性能测试潜力。JMeter是一款成熟且功能强大的开源工具,支持多种协议,适用于各种应用的测试;而Locust则基于Python,通过简单脚本模拟HTTP请求,更适合Web应用测试。
19 2
|
13天前
|
缓存 测试技术 Apache
告别卡顿!Python性能测试实战教程,JMeter&Locust带你秒懂性能优化💡
【9月更文挑战第5天】性能测试是确保应用在高负载下稳定运行的关键。本文介绍Apache JMeter和Locust两款常用性能测试工具,帮助识别并解决性能瓶颈。JMeter适用于测试静态和动态资源,而Locust则通过Python脚本模拟HTTP请求。文章详细讲解了安装、配置及使用方法,并提供了实战案例,帮助你掌握性能测试技巧,提升应用性能。通过分析测试结果、模拟并发、检查资源使用情况及代码优化,确保应用在高并发环境下表现优异。
40 5
|
10天前
|
消息中间件 监控 测试技术
惊呆了!Python性能测试高手都用这些神器:JMeter+Locust,效率翻倍📈
【9月更文挑战第8天】在软件开发中,性能测试对确保应用稳定性和高效运行至关重要。对于Python开发者而言,选择合适的性能测试工具能显著提升测试效率并精准定位性能瓶颈。本文深入探讨了JMeter和Locust这两款工具的独特优势。JMeter作为跨平台的性能测试工具,支持多种协议,具备高度可定制性和扩展性;而Locust则专为Python应用设计,利用协程实现高并发,提供实时监控和分布式测试功能。两者结合使用,可在实际项目中实现1+1>2的效果,帮助开发者构建全面高效的测试方案,保障应用稳定运行。
36 1
|
12天前
|
测试技术 Apache 数据库
从慢如蜗牛到飞一般的感觉!Python性能测试实战,JMeter&Locust助你加速🏃‍♂️
【9月更文挑战第6天】你的Python应用是否曾因响应缓慢而让用户望而却步?借助JMeter与Locust,这一切将迎刃而解。JMeter作为Apache基金会的明星项目,以其强大的跨平台和多协议支持能力,成为性能测试领域的魔法师;而Locust则以Python的简洁与高效,让性能测试更加灵活。通过实战演练,你可以利用这两款工具轻松识别并解决性能瓶颈,优化数据库查询、网络配置等,最终使应用变得敏捷高效,轻松应对高并发挑战。
11 1
|
14天前
|
测试技术 持续交付 Apache
性能测试不再愁!Python+JMeter+Locust,三步打造高性能应用
【9月更文挑战第4天】随着互联网的发展,软件性能成为衡量应用成功的关键。性能测试确保应用稳定高效运行,但复杂环境和多样需求带来了挑战。Python、JMeter和Locust三款工具可构建高效全面的性能测试方案。Python语法简洁,库丰富;JMeter提供图形界面,支持多种协议;Locust基于Python,简单易用且高度可扩展。结合三者,能满足复杂需求,保证灵活性与高效性。无论初学者还是资深工程师,都能确保应用高性能运行。
22 1
|
6天前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
24 3
快速上手|HTTP 接口功能自动化测试