我创建了一个Java包装器来喂jmeter。我已经用硒实现了Java类,硒由包装程序调用并执行GUI测试。 我激活了无头选项。 从jmeter用一个用户启动测试都可以正常工作。 尝试启动两个用户测试失败。 你能帮我理解为什么吗?
答案 0 :(得分:1)
您很可能错过了重要的一点:每个Selenium会话都需要有一个单独的URL,而Selenium服务器需要在不同的端口上运行。因此,请确保修改“包装器”以了解多个WebDriver实例,并为每个JMeter线程(虚拟用户)启动一个单独的Selenium服务器(或独立客户端)实例。
很遗憾,我们在没有看到您的代码的情况下无法提供进一步的帮助,只需记住您的包装器必须为thread-safe。还请注意 jmeter.log 文件-通常,该文件应包含足够的信息以使测试失败的原因降至最低。
P.S。您知道WebDriver Sampler插件吗?它的设计符合JMeter线程模型,您应该能够启动机器可以处理的尽可能多的浏览器。如果由于某种原因它不符合您的需求,则至少可以查看source code,以了解您需要在“包装器”中进行哪些更改