【问题标题】:Starting multiple firefox instance in jMeter, some of them don't operate在jMeter中启动多个firefox实例,其中一些不运行
【发布时间】:2021-11-17 18:30:45
【问题描述】:

我在 1 个循环中在 60 秒内开始对具有 25 个线程的 Web 应用程序进行负载测试。该测试由一些 selenium 命令组成。测试启动时 jMeter 启动 25 个 Firefox 窗口,但部分 Firefox 窗口不执行命令并保持空白。


2021-09-24 12:03:28,659 错误 o.a.j.t.JMeterThread:调用 threadStarted 时出错 org.openqa.selenium.TimeoutException:不可能稳定。 Rifiuto persistente del computer di destinazione。 (操作系统错误 10061) 构建信息:版本:'3.14.0',修订:'aacccce0',时间:'2018-08-02T20:19:58.91Z' 系统信息:主机:'TESEO-TEST',ip:'192.168.80.52',os.name:'Windows 10',os.arch:'amd64',os.version:'10.0',java.version:'1.8 .0_181' 驱动信息:driver.version:FirefoxDriver 远程堆栈跟踪: 在 sun.reflect.GeneratedConstructorAccessor58.newInstance(Unknown Source) ~[?:?] 在 sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_181] 在 java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_181] 在 org.openqa.selenium.remote.W3CHandshakeResponse.lambda$new$0(W3CHandshakeResponse.java:57) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.W3CHandshakeResponse.lambda$getResponseFunction$2(W3CHandshakeResponse.java:104) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:122) ~[selenium-remote-driver-3.14.0.jar:?] 在 java.util.stream.ReferencePipeline$3$1.accept(Unknown Source) ~[?:1.8.0_181] 在 java.util.Spliterators$ArraySpliterator.tryAdvance(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.ReferencePipeline.forEachWithCancel(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.AbstractPipeline.copyIntoWithCancel(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.AbstractPipeline.copyInto(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.FindOps$FindOp.evaluateSequential(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.AbstractPipeline.evaluate(Unknown Source) ~[?:1.8.0_181] 在 java.util.stream.ReferencePipeline.findFirst(Unknown Source) ~[?:1.8.0_181] 在 org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:125) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:212) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:130) ~[selenium-remote-driver-3.14.0.jar:?] 在 org.openqa.selenium.firefox.FirefoxDriver.(FirefoxDriver.java:140) ~[selenium-firefox-driver-3.14.0.jar:?] 在 com.googlecode.jmeter.plugins.webdriver.config.FirefoxDriverConfig.createBrowser(FirefoxDriverConfig.java:99) ~[jmeter-plugins-webdriver-3.3.jar:?] 在 com.googlecode.jmeter.plugins.webdriver.config.FirefoxDriverConfig.createBrowser(FirefoxDriverConfig.java:22) ~[jmeter-plugins-webdriver-3.3.jar:?] 在 com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.getPreparedBrowser(WebDriverConfig.java:234) ~[jmeter-plugins-webdriver-3.3.jar:?] 在 com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.threadStarted(WebDriverConfig.java:221) ~[jmeter-plugins-webdriver-3.3.jar:?] 在 org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:784) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:993) [jorphan.jar:5.4.1] 在 org.apache.jorphan.collections.HashTree.traverse(HashTree.java:976) [jorphan.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.threadStarted(JMeterThread.java:752) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.initRun(JMeterThread.java:740) [ApacheJMeter_core.jar:5.4.1] 在 org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:252) [ApacheJMeter_core.jar:5.4.1] 在 java.lang.Thread.run(Unknown Source) [?:1.8.0_181]

【问题讨论】:

    标签: jmeter geckodriver


    【解决方案1】:

    您确定您的系统能够运行 25 个浏览器吗?看着Firefox browser version 92 system requirements

    推荐的硬件

    • 支持 SSE2 的 Pentium 4 或更新的处理器
    • 512MB RAM / 64 位版本 2GB RAM

    那么您有 51 GB 的 RAM 和 26 个 CPU 内核吗?似乎并非如此,因为您的某些浏览实例没有响应 JSONWire protocol commands

    调查WebDriver Sampler Introduction

    注意:本项目无意替换 JMeter 中包含的 HTTP 采样器。相反,它旨在通过测量最终用户加载时间来赞美它们。

    因此,您应该使用 JMeter 的 HTTP Request 采样器创建主要负载,并且如果您想额外测试前端 - 使用 1 或 2 个浏览器实例。有several ways of converting Selenium scripts into JMeter test plans.

    【讨论】:

    • 我的机器是具有 Xenon 14 1,80GHz 处理器和 32GB RAM 的虚拟机。 CPU 永远不会超过 80% 的负载,而 ram 被占用 30%。
    • 但是我不能放弃使用火狐(geckodriver)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多