上下文: 我负载测试一个原型企业Web应用程序,可以对大型数据集执行快速搜索。它由数据库支持,并使用servlet支持的JQuery数据,以便在每次击键时缩小结果。
我想了解它在负载下的表现如何,并测量各种负载下的响应时间,稳定性和可用性,并提出SLA。在这种情况下,负载将是许多用户登录,同时键入各种搜索字符串。
工具: 我正在使用Apache Jmeter来做到这一点。
问题: 为了真正使我的负载测试随机化并消除数据库级别(或其他任何地方)的缓存效果,我希望每次搜索的HTTP请求都是随机的。我想做这样的事情:发送一个字符,等待,发送另一个字符,发送退格,发送一个字符,发送两个退格等等。
使用JMeter做这样的事情最优雅/最有效的方式是什么?
现在我正在研究使用CSV数据集并从大文件中读取随机字符,但我想知道是否有更好的方法。
答案 0 :(得分:1)
我不知道你的用例,但人们似乎不太可能打字随机字符。如果我是正确的,模拟随机击键可能与使用一小组搜索关键字一样具有误导性。
相反,您应该找到或开发一组人们可能会使用的关键字 - 可能是扫描他们将要搜索的内容?然后使用它来填充用户在搜索时输入的内容。
答案 1 :(得分:1)
您可以使用functions.
来实现随机搜索字符串具体来说,请看RANDOM和CHAR。
基本上,你有类似${__CHAR(${__RANDOM(0,82)})}
的东西来生成一个角色。
我还建议您使用包含前100个最受欢迎的搜索字词的CSV文件进行测试。