1

我需要這個特定的JSON場提取到在Visual Studio中我的性能測試參數:提取JSON響應爲參數

「ExamAnswerId」: 「757a3735-e626-412b-器934c-e577c6963d51」

當我嘗試通過右鍵單擊響應並單擊「添加提取規則」來手動執行此操作時,就會出現問題。文本被拆分爲3個不同的行,其旁邊有很多不可讀的數字: 「0x00000000 7B 22 45 78 61 6D 41 6E 73 77 65 72 49 64 22 3A {」ExamAnswerId「: 0x00000010 22 37 35 37 61 33 37 33 35 2D 65 36 32 36 2D 34「757a3735-e626-4

這聽起來很愚蠢,但我以某種方式需要提取3個不同的參數,只是因爲我無法複製/粘貼 - 而且這也是我認爲我失敗的地方。

ExamAnswerId對於我稍後填寫另一個webrequest很重要,但我似乎無法正確傳遞它。

非常感謝!

+0

我從標題中刪除了標籤名稱http://meta.stackexchange.com/questions/19190/should-questions-include-tags-in-their-titles – JJS

回答

0

我有一個類似的問題與提取規則。必須避開引號才能使條件生效。就像這樣:

的開頭爲:\ 「ExamAnswerId \」:\ 「
結尾爲:\」

+0

我正在使用VS 2013.我沒有逃離它並讓我工作。 – Raymond

0

執行以下步驟:

  1. 添加所有可用ExamAnswerId在CSV文件中。
  2. 現在將CSV添加爲數據源。

允許假設CSV文件名是testdatatableName=testData#csvcolumnName=ExamAnswerId
請注意當您添加數據源時,您將看到表名。

  • 替換此:

    ["ExamAnswerId": "757a3735-e626-412b-934c-e577c6963d51"] 
    

    通過這樣的:

    ["ExamAnswerId": "{{testdata.testdata#csv.ExamAnswerId}}"] 
    
  • +0

    如果有任何問題,請與我分享[「ExamAnswerId」:「757a3735-e626-412b-934c-e577c6963d51」]與我分享[email protected] –

    0

    在JSON管理會話。下面鏈路爲我工作:

    https://social.msdn.microsoft.com/Forums/vstudio/en-US/b26114a2-7a24-45eb-b5d1-01e9165045b0/cant-fetch-json-value-and-extract-to-parameter?forum=vstest

    實施例: 00000000 7B 22 53 65 73 73 69 6F 6E 22 3A 22 63 66 39 37 { 「會話」:「cf97 0x00000010 64 33 65 61 2D 36 39 38 33 2D 34 31 37 30 2D 38

    我創建 「Extrat_Text」 具有可變MySessionID 左邊界 「會話」: 右邊界」,

    然後我通過{{MYS essionID}}在後續請求中取代Session。

    1

    或者我們可以使用正則表達式(正向前看,正向後看) 例如,我想在一個JSON結果拿到的access_token屬性看起來像這樣

    {"token_type":"Bearer","expires_in":"3600","ext_expires_in":"0","expires_on":"1474420129","not_before":"1474416229","resource":"5fe3f443","access_token":"eyJ0eXAiOiJKV1QiLCJhbGci"} 
    

    我可以用這個表達式:

    (?<=\"access_token\"\:\").*(?=\")