通过https协议使用JMeter + Maven
问题描述:
我一直在努力使https请求与JMeter + Maven协同工作。 整个场景是 - 上传应用URL>登录到应用程序(这是https)>在主页上(这是http)通过https协议使用JMeter + Maven
我记录了这些测试使用HTTP代理JMeter。然后按规定here改“HTTP请求协议”采样器为“https”
现在,当我执行测试形式Maven的我碰到以下情况例外JMeter的日志 -
2010/09/08 16:25:38 ERROR - jmeter.util.JsseSSLManager: Exception occurred java.lang.NullPointerException
at org.apache.jmeter.util.SSLManager.getKeyStore(SSLManager.java:132)
at org.apache.jmeter.util.JsseSSLManager.getContext(JsseSSLManager.java:141)
at org.apache.jmeter.util.JsseSSLManager.<init>(JsseSSLManager.java:88)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.jmeter.util.SSLManager.getInstance(SSLManager.java:231)
at org.apache.jmeter.protocol.http.sampler.HTTPSampler.setupConnection(HTTPSampler.java:148)
at org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.java:404)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:658)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:647)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:247)
at java.lang.Thread.run(Thread.java:619)
2010/09/08 16:25:38 INFO - jmeter.util.JsseSSLManager: JsseSSLManager installed
2010/09/08 16:25:38 WARN - jmeter.protocol.http.sampler.HTTPSampler: You may have forgotten to set the ssl.provider property in jmeter.properties java.lang.IllegalStateException: SSLContextImpl is not initialized
at com.sun.net.ssl.internal.ssl.SSLContextImpl.engineGetSocketFactory(SSLContextImpl.java:145)
at javax.net.ssl.SSLContext.getSocketFactory(SSLContext.java:260)
at com.sun.net.ssl.SSLContextSpiWrapper.engineGetSocketFactory(SSLSecurity.java:365)
at com.sun.net.ssl.SSLContext.getSocketFactory(SSLContext.java:168)
at org.apache.jmeter.util.JsseSSLManager.setContext(JsseSSLManager.java:101)
at org.apache.jmeter.protocol.http.sampler.HTTPSampler.setupConnection(HTTPSampler.java:160)
at org.apache.jmeter.protocol.http.sampler.HTTPSampler.sample(HTTPSampler.java:404)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:658)
at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:647)
at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:247)
at java.lang.Thread.run(Thread.java:619)
一个当我执行件事JMeter本身的这些测试我不会遇到任何异常。但是从Maven中导致此问题的测试调用
有能跟大家没有人能够使用的JMeter + Maven的HTTPS成功地执行测试提前
感谢 塔伦ķ
答
JMeter的组建议我使用更新版本的“jmeter.jar”而不是JMeter Maven插件提供的版本....我要将这个问题标记为已回答,并在这方面提交了another query。
感谢乌拉圭回合时间黑
〜牛逼
答
是JMeter的作品以https我能够通过使用Maven和https jemter测试得到的,尝试添加该证书使用server.xml中的keytool指出的cacerts
它看起来像是一个证书问题“at org.apache.jmeter.util.SSLManager.getKeyStore(SSLManager.java:132)”是否Maven没有正确访问密钥库? – BlackGaff 2010-09-08 15:03:59
嗯..我想说,我必须从这里手动安装Maven-Jmeter插件 - https://sass4j.dev.java.net/files/documents/8536/91313/jmeter-plugin-bundle-1.0。因为目前没有公开回购这个插件。 我是Maven-Jmeter的新手,我如何知道Maven是否无法正确访问密钥库? 〜T – Tarun 2010-09-08 16:12:44
我看了一下xml文件,这个文件是在测试后生成的,其大部分代码行说 - “ “ 第一个示例是请求中的https ... 我发现它更令人惊讶,因为我没有遇到任何异常,当我从JMeter自己执行测试时! –
Tarun
2010-09-08 16:34:04