我一直在努力使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成功地執行測試提前
感謝 塔倫ķ
它看起來像是一個證書問題「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