我有一個使用JQuery的頁面。此頁面也有隱藏的字段,其值由JQuery動態填充(在下拉選擇時)。JMeter中的JQuery表達式
現在我有一個類似於這個$('* [name = staffid]')的javascript/jquery表達式.val() - 這個表達式爲我提供了選定的值。我想將這個值存儲在JMeter中的一個變量中,以便我可以將它傳遞給後續調用或提交期間。
如何在JMeter中評估/執行此表達式,以便我可以將這些值傳遞給後續請求或將其存儲在變量中以備後用。
我有一個使用JQuery的頁面。此頁面也有隱藏的字段,其值由JQuery動態填充(在下拉選擇時)。JMeter中的JQuery表達式
現在我有一個類似於這個$('* [name = staffid]')的javascript/jquery表達式.val() - 這個表達式爲我提供了選定的值。我想將這個值存儲在JMeter中的一個變量中,以便我可以將它傳遞給後續調用或提交期間。
如何在JMeter中評估/執行此表達式,以便我可以將這些值傳遞給後續請求或將其存儲在變量中以備後用。
你可以嘗試javascript function, ${__javaScript()}
或beanshell processor,可以執行JavaScript的
我試過這個,但JMeter抱怨jQuery的$引用是不可識別的jmeter.extractor.BSFPostProcessor:在BSF腳本中的問題org.apache.bsf.BSFException:JavaScript錯誤:內部錯誤:org.mozilla.javascript.EcmaError:ReferenceError:「 $「沒有定義 – Bala 2010-10-14 15:33:16
是的,JavaScript不起作用,因爲JMeter只運行一個沒有任何實際頁面上下文的JavaScript表達式。這正是JMeter的工作原理:幾乎所有負載測試工具都不會真正處理頁面,設置DOM,評估JavaScript等。 – 2010-10-14 16:34:57
您將不能反對使用JMeter的網頁評估jQuery的表達式。我希望這很容易,但是jQuery需要一個完全運行的DOM + JavaScript引擎,而這只是JMeter沒有提供的。
無恥的插件:我開始的公司BrowserMob通過運行由Selenium驅動的實際瀏覽器來加載測試。當使用真實的瀏覽器時,你不必做這種類型的東西。查看http://browsermob.com。
您是否找到可行的解決方案? – BlackGaff 2010-11-18 22:18:53