JMeter WebDriver适配Chrome 112报错求助:String.isBlank()方法不存在异常
问题描述
我正在使用Chrome版本112.0.5615.50(正式版,64位)及WebDriver开展测试,运行JMeter时出现如下异常,已尝试设置remote-allow-origins=*,仍无法解决,恳请协助。
异常日志
2023-04-12 21:40:45,183 INFO o.a.j.e.StandardJMeterEngine: Running the test! 2023-04-12 21:40:45,183 INFO o.a.j.s.SampleEvent: List of sample_variables: [] 2023-04-12 21:40:45,185 INFO o.a.j.g.u.JMeterMenuBar: setRunning(true, *local*) 2023-04-12 21:40:45,205 INFO o.a.j.e.StandardJMeterEngine: Starting ThreadGroup: 1 : Thread Group 2023-04-12 21:40:45,205 INFO o.a.j.e.StandardJMeterEngine: Starting 1 threads for group Thread Group. 2023-04-12 21:40:45,205 INFO o.a.j.e.StandardJMeterEngine: Thread will continue on error 2023-04-12 21:40:45,205 INFO o.a.j.t.ThreadGroup: Starting thread group... number=1 threads=1 ramp-up=1 delayedStart=false 2023-04-12 21:40:45,266 INFO o.a.j.t.ThreadGroup: Started thread group number 1 2023-04-12 21:40:45,266 INFO o.a.j.e.StandardJMeterEngine: All thread groups have been started 2023-04-12 21:40:45,276 INFO o.a.j.t.JMeterThread: Thread started: Thread Group 1-1 2023-04-12 21:40:45,912 INFO o.a.j.t.JMeterThread: Thread finished: Thread Group 1-1 2023-04-12 21:40:46,436 ERROR o.a.j.JMeter: Uncaught exception in thread Thread[Thread Group 1-1,6,main] java.lang.NoSuchMethodError: java.lang.String.isBlank()Z at com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.combineCustomCapabilities(WebDriverConfig.java:443) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.createChromeOptions(WebDriverConfig.java:299) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at com.googlecode.jmeter.plugins.webdriver.config.ChromeDriverConfig.createBrowser(ChromeDriverConfig.java:27) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at com.googlecode.jmeter.plugins.webdriver.config.ChromeDriverConfig.createBrowser(ChromeDriverConfig.java:14) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.getPreparedBrowser(WebDriverConfig.java:221) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at com.googlecode.jmeter.plugins.webdriver.config.WebDriverConfig.threadStarted(WebDriverConfig.java:152) ~[jmeter-plugins-webdriver-4.8.3.1.jar:?] at org.apache.jmeter.threads.JMeterThread$ThreadListenerTraverser.addNode(JMeterThread.java:797) ~[ApacheJMeter_core.jar:5.5] at org.apache.jorphan.collections.HashTree.traverseInto(HashTree.java:993) ~[jorphan.jar:5.5] at org.apache.jorphan.collections.HashTree.traverse(HashTree.java:976) ~[jorphan.jar:5.5] at org.apache.jmeter.threads.JMeterThread.threadStarted(JMeterThread.java:765) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.initRun(JMeterThread.java:753) ~[ApacheJMeter_core.jar:5.5] at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:264) ~[ApacheJMeter_core.jar:5.5] at java.lang.Thread.run(Unknown Source) ~[?:1.8.0_361] 2023-04-12 21:40:46,438 INFO o.a.j.e.StandardJMeterEngine: Notifying test listeners of end of test 2023-04-12 21:40:46,438 INFO o.a.j.g.u.JMeterMenuBar: setRunning(false, *local*)
解决方案
- 核心原因:
String.isBlank()是Java 11新增的方法,你当前使用的是Java 8(日志显示?:1.8.0_361),而JMeter WebDriver插件4.8.3.1版本依赖Java 11及以上的API,导致方法找不到。 - 解决步骤:
- 升级Java版本到11或更高(推荐Java 17,JMeter 5.5及以上版本支持),设置
JAVA_HOME指向新的Java安装目录,确保JMeter启动时使用该环境。 - 若无法升级Java,可降级JMeter WebDriver插件到兼容Java 8的版本,比如4.5.0版本(该版本未使用Java 11新增方法)。
- 升级Java版本到11或更高(推荐Java 17,JMeter 5.5及以上版本支持),设置
内容的提问来源于stack exchange,提问作者Kim Morin
相关产品推荐
相关产品推荐

