在Jmeter 中如要在某種場景中才執行特殊請求,此時可用If 邏輯控制器來實現。
If 邏輯控制器顧名思義當符合某個條件時則執行,添加路徑:測試計划->線程組->邏輯控制器->if 控制器。
1、If控制器中的字段解釋
名稱:控制器名稱,可根據情況填寫(填寫的名字最好與if控制器下的業務相關,便於分辨)
注釋:可填可不填,可根據需要填寫
Expression(must evaluate to true of false):表達式,此處的值默認情況下必須是True或False
Interpret Condition as Variable Expression?:默認勾選,當勾選時將條件解釋為變量表達式,此時必須使用__jexl3 or __groovy 表達式;去掉勾選時,此處可直接填寫條件表達式。黃色三角處的提示說明了默認勾選的優勢。
Evaluate for all children?:對其下所有子項有效
2、默認用法示例
當用例運行標志為Y時,則執行,否則不執行,條件表達式為${__jexl3("${is_run}"=="Y",)}
3、去掉勾選,直接寫入(單條件)示例
接口與接口之間有些存在依賴關系,此處請求方式做了區分,則不存在依賴時則運行,否則另處理,表達式為 "${is_rely}"=="N"
3、去掉勾選,直接寫入(多條件)示例
有些用例需要滿足多個條件中的一個或者全部就執行,表達式"${model}"=="exportperson" || "${model}"=="adjustdepartment"
備注:
1、當使用默認用法時,熟練的人可直接填寫表達式,若不熟時可借助函數助手生成表達式
2、單條件表達式:
== 、> 、< 、>=、<= 、!=
3、多條件表達式
|| 或,&& 與