记录jmeter测试计划时出现NullPointerException



在记录测试计划时,我在jMeter 5.4.3中得到以下异常:

2022-02-01 20:59:35,150 ERROR o.a.j.p.h.p.Proxy: [64794]  Exception when processing sample
java.lang.NullPointerException: null
at org.jsoup.parser.HtmlTreeBuilderState$9.process(HtmlTreeBuilderState.java:934) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilder.process(HtmlTreeBuilder.java:141) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilderState$14.anythingElse(HtmlTreeBuilderState.java:1227) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilderState$14.process(HtmlTreeBuilderState.java:1191) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilder.process(HtmlTreeBuilder.java:136) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilderState$10.process(HtmlTreeBuilderState.java:1019) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.HtmlTreeBuilder.process(HtmlTreeBuilder.java:136) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.TreeBuilder.runParser(TreeBuilder.java:66) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.TreeBuilder.parse(TreeBuilder.java:47) ~[jsoup-1.13.1.jar:?]
at org.jsoup.parser.Parser.parse(Parser.java:107) ~[jsoup-1.13.1.jar:?]
at org.jsoup.Jsoup.parse(Jsoup.java:58) ~[jsoup-1.13.1.jar:?]
at org.apache.jmeter.protocol.http.proxy.FormCharSetFinder.addFormActionsAndCharSet(FormCharSetFinder.java:55) ~[ApacheJMeter_http.jar:5.4.3]
at org.apache.jmeter.protocol.http.proxy.Proxy.addFormEncodings(Proxy.java:629) ~[ApacheJMeter_http.jar:5.4.3]
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:250) [ApacheJMeter_http.jar:5.4.3]
2022-02-01 20:59:35,153 WARN o.a.j.p.h.p.Proxy: [64794]  Exception while writing error
java.net.SocketException: Software caused connection abort: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method) ~[?:1.8.0_131]
at java.net.SocketOutputStream.socketWrite(Unknown Source) ~[?:1.8.0_131]
at java.net.SocketOutputStream.write(Unknown Source) ~[?:1.8.0_131]
at java.io.DataOutputStream.writeBytes(Unknown Source) ~[?:1.8.0_131]
at org.apache.jmeter.protocol.http.proxy.Proxy.writeErrorToClient(Proxy.java:580) [ApacheJMeter_http.jar:5.4.3]
at org.apache.jmeter.protocol.http.proxy.Proxy.run(Proxy.java:269) [ApacheJMeter_http.jar:5.4.3]
2022-02-01 20:59:40,717 INFO o.a.j.p.h.p.Daemon: HTTP(S) Test Script Recorder stopped

当这种情况发生时,浏览器停止加载页面,其控制台显示:

net::ERR_ABORTED 500 (Internal server error)

浏览器为Chrome 97.0.4692.99和Firefox 91.5.1esr。在正常使用期间,如果没有jMeter Proxy记录器,网页将正常运行。在web服务器日志中看不到任何错误。

我从未遇到过这样的问题,所以它可能与您的应用程序中的问题有关,请检查浏览器开发工具的控制台选项卡以查找任何可疑条目。

在任何情况下,一个未处理的NPE对我来说都像是一个bug,即使它不在JMeter中,而是在第三方库中,我希望在页面字符集检测失败时,应该有一个回退到某些默认值,无论是当前语言环境还是UTF-8,所以我建议通过JMeter Bugzilla来引发它。

同时,你可以考虑使用JMeter Chrome扩展进行记录,它没有那么侵入性,应该可以处理

相关内容

最新更新