jmeter - JMeter中的多用户登录
问题描述
我正在尝试对 NodeJS 应用程序执行负载测试,该应用程序允许用户进行单一登录会话。
但是,当我尝试使用 8 个并发用户(使用相同的凭据)执行负载测试时,它正在工作。
因此,我尝试创建 10 个用户 ID 并添加到 CSV 文件中,并配置“CSV 数据集配置”和“HTTP Cookie 管理器”,并将“线程数”设置为 80。
当我运行测试计划时,凭据不会平等地传递给每个会话。例如,userID1 传递了 3 次,userID2 传递了 7 次。
您能否阐明这种行为的原因以及如何使用 csv 文件中的每个凭据(每个凭据 8 个会话)运行线程?
解决方案
确保您已设置共享模式的选项并提供最小值(CSV Data Set Config
例如1 秒),以便每个线程正确读取 CSV 行而不会发生冲突。All Threads
ramp-up period
对于为什么它工作 8 个并发会话的问题,您只允许来自 UI 的单个会话 - 我的猜测是您为所有 8 个用户使用了相同的凭据 - 所以服务器可能认为它是来自同一用户的 8 个并行请求。这取决于会话的维护方式。例如,如果它带有session-cookie
,那么如果你有 8 个不同的 cookie,它可能会失败。但这只是一个猜测,因为我不知道它在您的应用程序中是如何完成的。
推荐阅读
- bash - 为什么-d在空变量上返回true
- html - 悬停效果适用于两个元素,但它应该只适用于元素
- css - 如何在 qualtrics 中将倒数计时器放在我的问题主体旁边?
- xcode - 将视图控制器从一个情节提要移动到另一个情节提要时,Xcode 11 崩溃。还有另一种方法可以做到这一点吗?
- fonts - 更改字符间距 | Word API JavaScript
- assembly - 组装 - 程序按预期工作,但第二次运行时,打印乱码
- javascript - 当结果应该是 Map 时得到一个数组?
- javascript - 如何检测我的网站/PWA 已加载到前台?
- angular - 带有额外手动验证的多个角度表单验证
- python - 对具有精美终端输出的二进制文件的透明 Python 调用