Jmeter的核心知識點-關聯

Jmeter的核心知識點-關聯

一、關聯

1.1 什麼是關聯?

​ 概念:關聯就是一個請求的響應結果要作爲另一個請求的提交數據

1.2關聯常用的兩種方式(後置處理器中)

  1. 正則表達式提取
  2. 使用xpath進行提取

二、步驟的實施(正則表達式提取)

1、創建測試計劃,線程組,添加http請求

2、添加正則表達式提取器

圖:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-esrkpquN-1585995525291)(file:///C:/Users/Acer/AppData/Local/Temp/Rar$EXa3564.38043/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95%E8%AF%BE%E4%BB%B6/img/create_reg.png)]

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-jC2GApEs-1585995525294)(file:///C:/Users/Acer/AppData/Local/Temp/Rar$EXa3564.38043/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95%E8%AF%BE%E4%BB%B6/img/add_reg_rule.png)]

參考解釋:

  1. 引用名稱:下一個請求要引用的參數名稱,如填寫title,則可用${title}引用它。
  2. 正則表達式:制定規則的公式 公式模板:前綴識別()後綴識別():括起來的部分就是要提取的數據。1):匹配任何字符。2) +:一次或多次。3)?:在找到第一個匹配項後停止。4)*:匹配規則內所有字符串
  3. 模版:$$格式;11表示解析到的第一個值,如果匹配到有兩個值,第二個值就是22,以此類推。
  4. 匹配數字:1代表全部取值,0代表隨機取值,通常情況填1。

注:傳值的話,把第一個請求的值傳給第二個請求,格式是:${變量名}

三、步驟實施(xpath提取器)

1、創建測試計劃,線程組,http請求

2、添加xpath提取器

圖:

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-g0l9vlOc-1585995525307)(file:///C:/Users/Acer/AppData/Local/Temp/Rar$EXa3564.38043/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95%E8%AF%BE%E4%BB%B6/img/add_xpath.png)]

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-ijRb5QzS-1585995525309)(file:///C:/Users/Acer/AppData/Local/Temp/Rar$EXa3564.38043/%E6%8E%A5%E5%8F%A3%E6%B5%8B%E8%AF%95%E8%AF%BE%E4%BB%B6/img/xpath_rule.png)]

參考解釋:

  1. Use Tidy:當需要處理的頁面是HTML格式時,必須選中該選項。備註:Tidy 一種HTML格式化模版
  2. Reference Name(引用名稱):存放提取出的參數名稱(被引用時使用)
  3. Xpath Query:用於提取值的Xpath表達式(和web自動化中元素定位的xpath是一樣的)

注意兩點:

  1. 如果返回的響應值是json格式該如何提取?

    比如這段json:
          {
                    "data": [
                            {
                                "dep_id":"T01",
                                "dep_name":"Test學院",
                                "master_name":"Test-Master",
                                "slogan":"Here is Slogan"
                            }
                      ]
           }       
    

    如果提取web端的html數據直接使用xpath進行定位即可。若返回值如上邊json格式的數據,則不需要點擊Use Tidy複選框。舉例:提取 “dep_id”的值作爲下一次請求的提交數據

    ​ 引用名稱:my_id

    ​ Xpath query:$.data[0].dep_id

  2. 傳值方法

    傳值:將第一個請求的xpath提取的數據傳遞給第二個請求格式: $ {變量名},例如:提取上邊json格式中的dep_id數據,則是 $ {my_id}

關聯總結

1. 正則表達式可以用於提取對頁面任何文本文檔、標籤文檔的提取,提取的內容是根據正則表達式在頁面內容中進行文本匹配
2. xpath Extractor則可以提取返回頁面任意標籤元素的任意屬性,如://a[@href="http://tieba.baidu.com"]/@name
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章