使用 JMeter 测试 spring boot rest 端点时出现 SSLException

SSLException while testing spring boot rest endpoint using JMeter

我正在尝试使用 JMeter 对端口 8080 上的本地 spring 启动应用程序 运行 进行负载测试。 配置的请求是GET请求,协议是https。我收到以下错误消息:

javax.net.ssl.SSLException: Unsupported or unrecognized SSL message
    at java.base/sun.security.ssl.SSLSocketInputRecord.handleUnknownRecord(SSLSocketInputRecord.java:439)
    at java.base/sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:184)
    at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:108)
    at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1151)
    at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1062)
    at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:402)

对此有任何帮助吗?

您很可能正在使用 https 访问服务器,而您应该使用 http,因为端口 8080 通常用于 http。

否则将 https 的端口更改为 8443

你cross-check JMeter 上的端口号了吗?

确保在 JMeter 中也定义了相同的端口。

https://localhost/application/sub/url

对于上面的URL,端口号是443,这是https的默认端口

https://localhost:8080/application/sub/url

而上面的URL使用8080进行通讯。

请确保指定了正确的端口。

此外,还要注意 JMeter 本身不允许未签名的证书。确保证书已通过证书颁发机构正确签署。