許多開放源代碼的測試工具是設(shè)計用于測試 Web 站點的,并期望測試能夠模擬用戶與一個或者多個頁面或表單的交互。因為在測試中間件解決方案時,應(yīng)用程序的 Web 接口并不可用,所以已選擇的工具必須在沒有瀏覽器交互的情況下支持基于 XML 的消息。JMeter 的 SOAP/XML 請求組件滿足該要求。
Thread Group 該組件按照測試計劃的要求進行重復(fù),以模擬一個特定數(shù)目的并發(fā)用戶。例如,模擬 5 個并發(fā)用戶,需要指定 5 個 Thread Group。
4. JMeter Thread Group
注重,Thread Group 組件具有一個標(biāo)簽為 Number of Threads 的域,用于控制與一個 Thread Group 相關(guān)聯(lián)的線程數(shù)目。由于每個 Thread Group 具有一個惟一的隨機選擇的 IFX 編碼的請求集合(請參閱下面的 SOAP/XML-RPC Request),因此決定將每個 Thread Group 限制為一個線程。假如對于一個或者多個 Thread Group 指定多個線程,那么相同的消息集合將會被發(fā)送多次,這將違反隨機選取準(zhǔn)則的目標(biāo)。
SOAP/XML-RPC Request 針對每個 Thread Group 所發(fā)送的期望數(shù)目的 IFX 編碼請求,重復(fù)該組件。實際的 IFX 編碼的請求是在該組件中指定的。
圖 5. JMeter SOAP/XML-RPC Request
View Results Tree 該組件服務(wù)于兩個目的。當(dāng)測試執(zhí)行時,該用戶接口顯示消息被發(fā)送和接收的測試過程。而且,該組件將測試結(jié)果寫入到一個文件,用于測試后的分析。
當(dāng)測試執(zhí)行時,IFX 編碼的響應(yīng)被記錄,從而可以分析包含在中間件響應(yīng)中的捕捉到的 MQ Time 和 Total Time 度量。還可以分析 JMeter 觀察到的 JMeter Time,盡管該數(shù)字還包括在中間件和 JMeter 之間的網(wǎng)絡(luò)延遲。