我很沮喪,因爲我沒有得到一個簡單的IF語句觸發,並開始懷疑我不明白IF語句在JMeter中的實現方式。。爲什麼沒有聲明工作?
我想要做的是查詢一個API,它在處理請求時返回202響應,然後返回結果時返回200。最後,如果在得到結果後再次查詢,則返回404。
我有一個執行此查詢沒有條件的,同時控制器和退出的404
這似乎是工作確定。
我想要做的就是確認我已經有效的JSON返回的202和200,但忽略了404
我認爲我可以在迴路每次查詢後添加一個IF控制器運行AA BSF斷言,當我有202或200,但我似乎無法得到它的工作。即使我把「真」或「1 == 1」作爲斷言從未被調用的條件。
"${httpCode}" == "200"
在我的斷言中,我添加了一個故意的錯誤「eval x;」導致斷言,如果我拖到失敗,並把它放到套件的其他部分 -
try {
eval('var response = ' + prev.getResponseDataAsString());
eval x;
} catch(e) {
prev.setSuccessful(false);
prev.setResponseMessage("Invalid response. Expected a valid JSON.");
}
就像我說的,即使我添加真或1 == 1的斷言錯誤永遠顯示斷言結果。我從根本上誤解了IF控制器的工作方式?當然,與我一起工作的Java程序員在這裏看不到有什麼問題。
不幸的是這個網站不會讓我發佈套件的圖像...
BTW
對不起,問一個「模糊」的問題,但我已經一個多星期了,現在評估JMeter的和在「How To」類型教程中找到缺乏的在線資源。很多對特定JMeter對象和基本「入門」類型帖子的引用,但沒有詳細說明。此外,大多數參考文獻似乎都是循環而且過時的;我不斷重新找回自己在相同的頁面。
apache站點似乎更適合作爲對象引用。
是否有人能夠推薦一個非常好的在線資源?
你爲什麼不嘗試BeanShell的崗前處理器? –