使用JMeter实现自动判定运行结果

1.前言

在JMeter中实现自动判定运行结果,通常涉及到设置断言(assertions)和监听器(listeners),以及可能的后处理器(post-processors)。这些组件可以帮助你验证响应数据是否符合预期,从而自动判断测试的结果。
本篇文章主要介绍断言。

断言:让程序自动判断预期结果和实际结果是否一致

JMeter常用断言:

  1. 响应断言
  2. JSON断言

2.响应断言

响应断言是用于验证测试过程中服务器响应的数据是否满足预期条件。通过响应断言,你可以检查HTTP响应码、响应文本、响应头部信息、响应时间等多种属性,确保应用程序或API按预期工作。

位置: 测试计划-->线程组-->HTTP请求-->(右键添加)断言-->响应断言

QQ_1721477272669

QQ_1721527434799

示例:

请求接口: https://www.baidu.com

检查: 让JMeter检查响应数据中是否包含"百度一下,你就知道"

在查看结果树中,可以看到响应数据中确实存在"百度一下,你就知道"

QQ_1721527572364

首先测试字段选择响应文本,点击添加,然后输入想要验证的文本即可.

QQ_1721528137842

输入完成之后,Ctrl+s保存,然后运行即可

断言会自动帮我们判断响应结果是否符合我们的预期.符合就是绿色的√

QQ_1721528288664

返回响应断言,更改响应文本

QQ_1721528408540

再次运行查看结果

QQ_1721528453795

可以看到这次断言就失败了.

3.JSON断言

JSON断言专门用于验证HTTP响应中的JSON数据。这个断言工具对于测试使用JSON格式交换数据的RESTful API尤其有用,因为它允许你指定JSON路径表达式并检查实际响应数据是否符合预期。

位置:测试计划-->线程组-->HTTP请求-->(右键添加)断言-->JSON断言

QQ_1721529639772

示例:

请求接口: http://www.weather.com.cn/data/sk/101010100.html

检查: 判断响应JSON数据中,city对应的内容是否是"北京"

首先还是添加HTTP请求以及查看结果树,先运行一遍查看接口返回数据

HTTP请求设置:

QQ_1721529112223

查看结果树

QQ_1721529317126

选择数据展示方式为JSON Path Tester

JSON Path Expressions to Test:在这里输入你想要测试的JSON路径表达式。可以使用$作为根节点,.表示子节点。

例如我要取得是city的内容,就是使用$.weatherinfo.city,点击Test,就会打印出对应的结果-“北京”

添加JSON断言

QQ_1721529773747

Ctrl+s保存,然后运行即可,可以看到JSON断言结果是正确的

QQ_1721529815372

同样来更改一下预期结果

QQ_1721529851851

再次保存运行,可以看到这次断言结果就失败了

QQ_1721529887307

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
使用JMeter实现接口幂等性的测试,可以按照以下步骤进行: 1. 创建测试计划:在JMeter中创建一个新的测试计划,然后添加一个HTTP请求,用于调用需要测试的接口。 2. 配置HTTP请求:在HTTP请求中,需要设置请求的URL、请求方法、请求头、请求参数等信息。 3. 添加断言:在HTTP请求中,可以添加断言来验证接口的响应结果是否正确。可以使用响应断言来验证接口返回的数据是否符合预期。 4. 配置JMeter的CSV数据文件:在测试计划中,可以使用CSV数据文件来存储测试数据,包括请求参数和预期结果。需要在CSV文件中添加一列用于存储幂等性Token。 5. 添加HTTP Header Manager:在测试计划中添加HTTP Header Manager,用于设置请求头中的幂等性Token。 6. 添加BeanShell前置处理器:在测试计划中添加BeanShell前置处理器,用于生成并设置幂等性Token。 7. 配置线程组:在测试计划中添加线程组,用于模拟并发请求。可以设置线程数、循环次数、启动延迟等参数。 8. 运行测试:运行测试计划,可以查看测试结果,检查接口的幂等性是否符合预期。 需要注意的是,在使用JMeter测试接口幂等性时,需要特别关注幂等性Token的生成和设置,确保每次请求的Token都是唯一的,并且每次请求的Token都能被正确地传递到接口中。同时,需要同时考虑并发请求的情况,以确保接口在多线程环境下也具有幂等性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

比奇堡的天没有云

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值