2015-11-08 58 views
0

我正在使用jmeter來測試使用IBM Worklight的移動應用程序的性能。我得到3個動態值作爲字符串,我需要處理這些值。我是reular表達式提取器,但它沒有工作。任何人都可以幫助我找出解決方案嗎? Dyanamic值是如何在jmeter中以動態值形式顯示字符串

[ 「{\」 JSESSIONID \ 「:\」 0000Mhn7GqWMU1P7Xi9dpJ7mgFb \」,\ 「mbparam \」:\ 「ZjurDsggbg9CZBgd5miAIHMIH%2B5oC7XdSukctItof7AJnpe8UNhlBsgM%2F8w%3D \」,\ 「MP-AUTH-TOKEN \」: \ 「leXozMVUXFYixuYwxgV58EXuRg1Vd0xtpZeouAMQtk6Pd0I1D618motg \」}「]

更新

我想您所提供的正則表達式,但它也不能正常工作。

Regular Expression

Sampler

Response

Debug Sampler

這些是我已經執行的步驟。請指導我如果我做錯了什麼。

更新

這是我得到的迴應是

{ : 「客戶名稱」: 「ABC」, : 「homeEmail」: 「」, : 「profileDebitAcc」:」" , : 「sessKey」: 「0000V3EgdxpY937GTWQ3yogRLGq」, : 「mbParam」: 「hDurAxWHjPT%2BtB7xEyz7Huu51oDOAH8gyNSWIBnHmA9UWuF0lcHGiOy82S0%3D」, : 「responseHeaders響應」: :{ : 「內容語言」: 「EN-AU」 , :「Date」:「Thu,12 Nov 2015 05:59:50 GMT」, ::「Content-Length」:「6759」, ::「Expires」:「0」, :「Content型 「:」 text/html的; charset = ISO-8859-1「, ::」X-Powered-By「:」Servlet/3.0「, :」Cache-Control「:」no-cache「, ::」Pragma「:」no -cache」 :}, 「的authToken」: 「AHWXZlUt6Rupm1FeBWGu2TEVHZemZwVGbmwmpVxXJR7TMhCA8pWN96ae」, 「的StatusCode」:200, :

我需要提取sesskey,mbParam和的authToken值,並在接下來的請求,並將其作爲列表。體

在這些值被顯示爲

[請求 「{\」 JSESSIONID \ 「:\」 0000gPQCV4FJ1NQvB8d4Ifd_P9I \」 ,\ 「mbparam \」:\ 「hDu7DhU%2FjA81TEjwbREmytgqIItmUS4b6rhEojYtcalv0PUs6iaewmtZu6U%3D \」,\ 「MP-AUTH-TOKEN \」:\ 「4fU7Bg20sRRUikHnzmZKcC4ZPyCjVxJnmm7QMnSm6mfT7GlqnySQS2YP \」}「]

enter image description here

如何處理這些價值?

回答

0

使用下面的正則表達式提取配置:

  • 參考名稱:任何有意義的事,即dynamicvalues
  • 定期Expresssion:

    \["\{\\"jsessionid\\":\\"(.+?)\\",\\"mbparam\\":\\"(.+?)\\",\\"MP-AUTH-TOKEN\\":\\"(.+?)\\"\}"\] 
    
  • 模板:$1$$2$$3$

Regular Expression Extractor

參考提取值:

  • ${dynamicvalues_g1} - 爲JSESSIONID
  • ${dynamicvalues_g2} - 爲mbparam
  • ${dynamicvalues_g3} - 爲MP-AUTH-TOKEN

Debug Sampler

雖然developin摹正則表達式記住,你需要用一個反斜槓逃脫以下字符:

  • [
  • {
  • \
  • }
  • ]

其他特殊字符,需要轉義的是: .^$*+?()|

參考文獻:

+0

德米特里你好,感謝您的答覆。我嘗試了你提供的正則表達式,但它仍然對我顯示一個錯誤。我將提供屏幕截圖/ * - secure- {「errors」:[「IO:第1行第14列出現意外字符']」,「isSuccessful」:false,「warnings」:[],「info 「:[]} * /。這是我正在創建的錯誤。 – Sree

+0

如果您需要提取**整個**響應,不僅需要3個動​​態值,請使用'(?s)(^。*)'作爲正則表達式,使用'$ 1 $'作爲模板。有關正則表達式的解釋,請參閱[如何使用JMeter從文件中提取數據](https://blazemeter.com/blog/what-every-performance-tester-should-know-about-extracting-data-files-jmeter)。 –

+0

我也嘗試過這一個,但它仍然顯示「/ * - 安全 - {」錯誤「:[」IO:意外的字符''在第1行,第14列「],」isSuccessful「:false,」warnings「:[ ],「info」:[]} * /。 – Sree

相關問題