利用JMeter我要檢查鎖定節只允許1個更新的JMeter檢查不同的說法在不同的線程
我正在運行的線程組,10個線程,預計只有1(並不總是第一個)線程返回0和另外9人返回1 我該如何聲明它?
線程組(10) - HTTP Sampler - - ?斷言
編輯
10實際上是一個動態屬性。所以我需要任何線程數來期望只有1個斷言才能返回成功。
測試是檢查記錄的鎖定是否正常工作,即使在壓力/負載測試中也只能更新一次記錄。
編輯2
使用關鍵部分控制器沒有給我失敗的確切結果
利用JMeter我要檢查鎖定節只允許1個更新的JMeter檢查不同的說法在不同的線程
我正在運行的線程組,10個線程,預計只有1(並不總是第一個)線程返回0和另外9人返回1 我該如何聲明它?
線程組(10) - HTTP Sampler - - ?斷言
編輯
10實際上是一個動態屬性。所以我需要任何線程數來期望只有1個斷言才能返回成功。
測試是檢查記錄的鎖定是否正常工作,即使在壓力/負載測試中也只能更新一次記錄。
編輯2
使用關鍵部分控制器沒有給我失敗的確切結果
最後我成功了,我保存在一個唯一的ID每個線程失敗計數和我用tearDown Thread Group
末與If Controller
在線程組爲無效響應
並根據它JSR223 Sampler
它通過每個線程唯一ID標記的故障標誌:
String threadNumber = String.valueOf(ctx.getThreadNum());
props.put("failures" + threadNumber, 1);
JSR SAMPL
int numberOfFailures = 0;
for (i=0; i < 10; i++) {
String id = "failures"+ String.valueOf(i);
failureFlag = props.get(id);
log.info("failureFlag=" + failureFlag);
if (failureFlag == 1){
numberOfFailures ++;
}
}
if (numberOfFailures != 9) {
SampleResult.setSuccessful(false);
}
我可以看到實現您的方案有2種方法:
使用AutoStop Listener可通過JMeter Plugin s,它具有AutoStop on Error Rate功能,因此如果失敗的採樣器的百分比高於90,您將能夠停止測試。您可以安裝設置AutoStop監聽使用JMeter Plugins Manager:
使用Taurus tool作爲JMeter測試的包裝,金牛座有Pass/Fail Criteria subsystem,你可以把你的邏輯有條件地失敗,整個測試如果一個頁面錯誤率將超過90%。 Taurus將返回非零退出代碼,您可以稍後使用它(即在持續集成服務器中觸發構建失敗)。
我只需要Jmeter解決方案。我用Jmeter使用Jenkins,期望所有Jmeter採樣器都能成功 – user7294900
什麼是鎖定部分:如果不僅 1成功請求成功呃失敗了? –
代碼中的測試鎖定只允許一次執行操作,而其他進程將失敗 – user7294900