學習筆記jmeter之關聯 、正則表達式提取(4)

關聯:就是一個請求的結果是另一個請求提交的數據,二者不再是獨立存在的,而是依賴關係。

爲了實現多樣的業務邏輯(可能由多個請求組合而成)

實現方式:

1、JDBC將結果賦值給變量,再在另一個請求調用變量。

2、Xpath提取器(後置處理器,從響應的HTML中提取標籤的數據)

3、正則表達式提取器

組件位置:取樣器--後置處理器--正則表達式提取器

 

測試要求:

1. 對http://www.baidu.com進行2次訪問;
2. 第一次獲取title值,第二次把獲取的值作爲參數名(title標籤值)的參數值附加請求中。 

   就是要得到“百度一下你就知道”。

 

xpath提取器

1. Use Tidy:當需要處理的頁面是HTML格式時,必須選中該選項。
   1) Tidy:一種HTML格式化模板
2. Reference Name:存放提取出的值的參數名稱(被引用時使用)。(引用名稱)
3. XPath Query:用於提取值的XPath表達式(跟學習WEB自動化使用XPath一樣)。 

xpath介紹參考:https://blog.csdn.net/caohongxing/article/details/83010276?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-11&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-11

 

正則表達式提取器

正則表通常被用來檢索、替換那些符合某個規則的文本

     

  正則表達式(提取規則):直接按唯一關鍵字來識別,括號中就是要提取的內容。會把括號內的結果都存放至變量中。如(>.*),中的>也會存放至變量中,注意。

1. 引用名稱:下一個請求要引用的參數名稱,如填寫title,則可用${title}引用它。
2. 正則表達式:制定規則的公式
   公式模板:前綴識別()後綴識別
   ():括起來的部分就是要提取的數據。聲明截取的區間。
       1) .:匹配任何字符。
       2) +:一次或多次。
       3) ?:在找到第一個匹配項後停止。
       4) *:匹配規則內所有字符串
3. 模板:$$格式;$1$表示解析到的第1個值;如果匹配有2個值,第二個值$2$,以此例推。這個是匹配規則中右多個括號時,第一個指的是第一個括號中的匹配內容,依次類推。
4. 匹配數字:1代表全部取值,0代表隨機取值,通常情況下填1  。2代表取返回結果組合的第2個值,依次類推。這個是指能匹配到多個記錄,第一個值第一條匹配記錄值。

    

訪問網站返回信息如第一個json圖結構,設置匹配規則見中間圖,調用變量見第三個圖。

 

1. 正則表達式提取器可以用於對頁面任何文本的提取,提取的內容是根據正則表達式在頁面內容中進行文本匹配;
2. XPath Extractor則可以提取返回頁面任意元素的任意屬性,如//a[@href="http://tieba.baidu.com"]/@name;

3. 如果需要提取的文本是頁面上某元素的屬性值(HTML、xml),建議使用XPath Extractor;
4. 如果需要提取的文本在頁面上的位置不固定,或者不是元素的屬性,建議使用正則表達式提取器。

(如果從標籤(html | XML)語言提取數據最好使用  Xpath 提取器,如果想要的數據是文本格式,正則表達式提取器更方便)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章