我们在应用程序中有一个简单的性能测试流程。
- 我们登录
- 根据某些条件进行搜索
- 重复搜索不同的参数。
我们正在使用 Jmeter 进行性能测试。我们需要运行多个线程来以可扩展的方式对此进行测试。
我们目前安排的方式是:
-Test Plan
- Thread Group
- Cookie Manager
- Login To application
- Search on param 1
- Search on param 2
- results summary table
- Summary report
所以基本上我们在计划级别有汇总返回表和报告,而 cookie 管理器在线程组级别。
当我运行一个线程时,它运行良好并且完成得很好。当我将它扩展到多个线程时,一旦下一个线程开始,最后一个线程的会话就会失效。由于新生成的线程,这会导致所有已经运行的线程失败。
我通过观察得出了这个结果:
1. 如果我运行多个线程,则只有最后一个线程在结果摘要树中得到有效响应
2. 如果我使用 2 个线程运行,上升周期为 10 秒,这意味着每个线程都有时间完成本身,然后它们都成功运行。
根据我的理解,每个线程登录到应用程序并且由于 cookie 管理器处于线程级别,因此将分别为每个线程的会话 ID 维护值?但是是什么导致线程之间的会话 id 值被覆盖?
任何帮助都感激不尽。