jmeter - Blazemeter 为 Jmeter 记录的信号器标签的响应错误 (403)
问题描述
我使用 blazemeter 记录了登录和注销请求。在记录后,blazemeter 创建了近 10 个请求,其中一些请求包含 .../signalr/.../connectionToken 标签。当我运行测试时,这些标签会返回类似and的错误。
测试包括 10 个用户。用户有不同的用户名和密码。其他标签(来自这些信号器标签的另一个标签)返回 true。
所以,我现在想知道我是否可以禁用这些页面而不包括在测试中?或此问题的任何解决方案?
解决方案
-
如果我可以禁用这些页面而不包括在测试中
理论上是的,您可以询问 SignalR 是否在性能测试范围内,如果没有,您可以禁用它们,但是我相信行为良好的 JMeter 测试应该完全像真正的浏览器一样,所以如果真正的浏览器将这些请求发送到
.../signalr/.../connectionToken
- JMeter 应该也送他们 -
或此问题的任何解决方案
我不认为您可以在Web 2.0时代记录和成功重放任何内容,大多数 Web 应用程序出于各种原因(保存客户端状态、安全性、跟踪等)大量使用动态令牌。当您记录请求时,您会获得一个硬编码值,该值可能会通过其他方式过期或失效,您需要识别所有动态值,例如此 SignalR 令牌并执行关联:使用合适的 JMeter 从先前响应中提取动态值的过程后处理器并在下一个请求中以JMeter 变量或函数的形式重新使用它们
如果您第二次记录相同的用户场景并比较两个生成的测试计划,所有更改的请求参数都需要关联。还有一个替代记录选项,它能够以“SmartJMX”模式导出记录的请求,并自动检测和关联动态参数,有关更多详细信息,请参阅如何将 JMeter 脚本时间缩短 80%。
推荐阅读
- c++ - C/C++ 如何为单元测试隔离库?- 以 Mbed 为例
- android - Android Studio 更新 2019 后 Android 模拟器相机无法正常工作
- laravel - 如何正确显示 contenteditable 内容?(laravel) (vue)
- c++ - 第一行的分段错误
- rust - 如何为依赖于 Rust 中的泛型类型参数的结构定义关联函数的不同实现?
- mysql - 有没有办法在下一行中添加一秒钟的时间戳?
- android - BackgroundColor 属性在 Android 上更改,但在 iOS 上没有更改
- arrays - 在 laravel 中为 morris js 创建数组
- php - Ajax json响应返回未定义的值
- laravel - Laravel 5.7 迁移无法添加外键,除非迁移运行为 migrate::fresh