您的位置:首页 > 财经 > 产业 > 网络推广培训中心_移动界面设计案例_seo综合查询软件排名_营业推广怎么写

网络推广培训中心_移动界面设计案例_seo综合查询软件排名_营业推广怎么写

2025/1/10 0:16:06 来源:https://blog.csdn.net/m0_46103905/article/details/144801464  浏览:    关键词:网络推广培训中心_移动界面设计案例_seo综合查询软件排名_营业推广怎么写
网络推广培训中心_移动界面设计案例_seo综合查询软件排名_营业推广怎么写

项目场景:

学习黑马点评时,老师的优惠卷秒杀编码完成后用到了jmeter来进行压测。老师默认我们具有jmeter使用基础,所以在视频中没有展示一些jmeter配置细节,导致我在实际压测中出现了一些与视频效果不一致的报错,故记录下来,共勉学习。


问题一:Response code:401

发送HTTP请求后,数据库没有变化,而JMeter直接返回状态码401

Thread Name:秒杀抢购单人 2-71
Sample Start:2024-12-12 10:42:06 CST
Load time:1
Connect Time:0
Latency:1
Size in bytes:121
Sent bytes:225
Headers size in bytes:121
Body size in bytes:0
Sample Count:1
Error Count:1
Data type ("text"|"bin"|""):
Response code:401
Response message:HTTPSampleResult fields:
ContentType: 
DataEncoding: null

如图所示:
在这里插入图片描述


原因分析:

HTTP 状态码 401(Unauthorized)表示“未授权”,通常是出现了以下情况:

  • 未提供认证信息:客户端请求访问需要认证的资源,但没有提供任何认证信息。
  • 认证失败:客户端提供了认证信息,但认证失败了。这可能是因为用户名或密码错误,或者认证令牌(Token)无效或过期。
  • 认证过期:即使之前成功认证过,如果用户的会话过期了,服务器也会返回 401 状态码。
  • 权限不足:用户虽然已经通过认证,但可能没有足够的权限来访问请求的资源。
  • 未配置认证:服务器可能配置为需要特定的认证方式,而客户端没有使用正确的认证方式。
  • 跨域问题:在跨域请求中,如果认证令牌没有正确地随请求一起发送,也可能导致 401 错误。

所以说到这里应该就知道为啥报401了,噢,我没有加请求头呀!


解决方案:

如何在JMeter里面添加请求头呢?

在这里插入图片描述
如图,新建一个HTTP信息头管理器,然后把authorization的信息头加进去
这个请求头可以在redis里面或者网页找到:
在这里插入图片描述
在这里插入图片描述
加上以后就不会报401啦!


问题二:response为200 且数据库正常发生了超卖,但是jmeter所有请求都显示异常

添加完请求头后,又出现了问题二,情况如图:
在这里插入图片描述


原因分析:

这是因为我盲目参照视频增加了json断言 但是使用的是他的默认形态:
可以看到我加了个json断言,但是里面是空的。
如果将这个json断言的元素给删除,那么所有的HTTP请求都会成功:
在这里插入图片描述

那么老师到底为啥要设置一个json断言呢?
他是为了区分成功拿到库存和失败拿到库存这两种情况 所以我们的json断言要考虑这两种情况
在这里插入图片描述
在这里插入图片描述


解决方案:

我们的json断言应该设置success的期望值为true 记得勾选添加期望值
在这里插入图片描述
这样就可以做到和视频里一样的判定效果啦!
在这里插入图片描述
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com