jmeter的高階使用技巧


Jmeter(一)_打印時間戳與年月時分秒

 

Jmeter中提供了一種函數,可以打印時間戳,如下圖

  年: yyyy 月:MM 日:dd
  時: HH 分: mm 秒:ss

關於時間戳的格式,可以自由組合定義,這里我寫成這樣 yyyy-MM-dd HH:mm:ss

生成的函數是這樣的:${__time(yyyy-MM-dd HH:mm:ss,)}

現在將這個函數寫入下一個接口

執行,查看結果樹,可以看到結果中,將當前時間打印出來了哦~

此函數適用於一些需要填寫時間參數的接口,用於實時獲取當前時間。時間參數如果寫死的話,過段時間接口就會報錯啦~

下面說一下時間偏移如何打印。

說到時間偏移,就是說我不光想打印當前時間,我還想打印明天,后台,甚至是明年的時間,那么我們要怎么去處理?這里就需要用到 BeanShell Sampler

在Parameters中傳遞變量,執行並查看結果樹,發現成功打印了跨度為一年的時間戳

附:beanshell打印時間的代碼

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

try{
Date date =new Date(); //獲取當前時間
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String nowDate = sf.format(date);
Calendar cal = Calendar.getInstance();
cal.setTime(sf.parse(nowDate));
cal.add(Calendar.DAY_OF_YEAR,+0);
String orderDate = sf.format(cal.getTime());
cal.add(Calendar.DAY_OF_YEAR,+365);
String senderDate = sf.format(cal.getTime());
vars.put("orderDate",orderDate);
vars.put("senderDate",senderDate);

}
catch(Exception e){

}

 

 

Jmeter(二)_Xpath關聯

 

在Jmeter中,除了正則表達式可以用作關聯,還有一種方式也可以做關聯,那就是 XPath Extractor。它是利用xpath提取出關鍵信息,傳遞變量。

具體用法

添加一個后置處理器-XPath Extractor

實際操作

 

以騰訊新聞網為例,我們做一次演練。對騰訊新聞網我們發起一次請求,觀察結果。

 

 

 

現在我想利用xpath把這些url都取出來,我們來寫一個xpath表達式匹配一下。發現url都被匹配出來了。

 

.//a[@class='linkto']/@href 具體是什么意思呢?意思就是通過a>class>href這三層標簽進行逐級檢索,找到class=linkto標簽下的所有href,進行匹配

這里如果我想匹配到href標簽下的文字標題怎么辦?改一下表達式吧--.//a[@class='linkto'],我們發現取出來都是標題,后面可以再進行拼接

現在表達式沒有問題了,我們將添加的xpath提取器掛在http請求下面。添加一個debug查看結果,可以看到debug中已經獲取到了這些url

我們可以添加兩個xpath提取器,分別提取url和title進行拼裝,運行查看結果

 xpath基本語法

//*[@class,'A ']/@href 從根目錄下定位所有class=A的href

//*[@class,'A ']  從根目錄下定位所有class=A標簽內的文本

//*[contains(@class,'A ')]  從根目錄下@class值中包含A的節點

substring-before(.//*[@class='A']/text(),'0') 返回根目錄下[@class='A']/text()中第一個'0'前面的部分,如果不存在'0',則返回空值

substring-after(.//*[@class='A']/text(),'0') 返回根目錄下[@class='A']/text()中第一個'0'后面的部分,如果不存在'0',則返回空值

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM