今天在作服務發佈性能測試的時候,傻傻的犯了個錯,沒有對參數進行仔細的檢查,直接從fiddler中copy到jmeter中了,業務流程配置好後執行測試報錯。。。java
jmeter中的響應結果以下:apache
java.net.URISyntaxException: Illegal character in query at index 222: http://xxx.xx.xx.24:9006/xx-cloud/rest/china1_10/wmts?service=WMTS&...&width=256&tileSize=256&fullExtent=[object Object]&tilematrix=10&tilerow=146&tilecol=820 at java.net.URI$Parser.fail(URI.java:2848) at java.net.URI$Parser.checkChars(URI.java:3021) at java.net.URI$Parser.parseHierarchical(URI.java:3111) at java.net.URI$Parser.parse(URI.java:3053) at java.net.URI.<init>(URI.java:588) at java.net.URL.toURI(URL.java:946) at org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl.sample(HTTPHC4Impl.java:331) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy.sample(HTTPSamplerProxy.java:74) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1146) at org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase.sample(HTTPSamplerBase.java:1135) at org.apache.jmeter.threads.JMeterThread.executeSamplePackage(JMeterThread.java:465) at org.apache.jmeter.threads.JMeterThread.processSampler(JMeterThread.java:410) at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:241) at java.lang.Thread.run(Thread.java:745)
仔細檢查了一下各控件的相關參數,感受沒有什麼問題,頓時萌幣了。性能
好吧,休息一下,想想當初哪裏的雷忘了排了,對照着原始Url仔細對比,發現響應報錯中fullExtent的參數值爲[object Object],在請求中沒有進行轉碼,致使存在特殊符號「空格」,坑啊。。。測試
解決方法:編碼
一、自動轉碼:spa
在jmeter的「HTTP請求」中勾選fullExtent參數後面的「編碼?」複選框,以下圖所示:.net
二、手動轉碼:rest
手動轉碼就簡單了,將fullExtent的參數值手動轉碼爲[object%20Object]後對其賦值便可。code
PS:任何事情都須要細緻嚴謹,尤爲作測試工做,2018年第一份隨筆,但願新的一年生活上家庭甜美,身體健康,工做上嚴謹細緻,勇攀高峯!blog