Jmeter 快速入門教程(八) -- jmeter事務控制器
你肯定知道, jmeter是一個跨系統平臺的效能測試工具, 比如他可以在linux,freebsd,windows,solaris 等等各種系統上可以執行. 我可以說, 事務 transaction controller 控制器是jmeter作效能測試中最重要的. 讓我來分享一些關於事物控制器的經驗吧.
如果你看了錄製jmeter指令碼那一章, 你會知道jmeter會錄製很多的子請求. 比如當開啟首頁後, 會繼續開啟圖片, css等資原始檔. 通常我們會剔除掉這些子請求, 但如果我需要衡量開啟一個頁面(包含所有子請求) 到底的效能, 請求時間如何時, 我們會計算包含所有子請求的資料. 這時我們必須使用事物控制器. ( 當然除了這種情況, 在進行api的測試時, 通常也需要事物控制器, 例如 假設api1 獲取tgt, api2根據tgt 獲取st, 假設該openauth 登陸的過程, 我們將這2步api的呼叫, 看做一次登陸成功. 那麼我們需要將這2步操作,看為一個事務) .
讓我們直接來看一個例子吧.
如上圖, 有2個主要的http請求. 1個是主頁請求, 主頁請求又包含了4個子請求. 另外一個主請求是faq頁面.
我添加了一個事務控制器(transaction controller), 將主頁及其四個子請求都放在了該事務控制器下.
我進行了一次測試,看下聚合報告裡的內容.
你可以看到一個事務控制器的標籤. 這個事務器則包含了(Home Page, .jpg request, .gif request, .png request, .js request) 這幾個請求. 雖然我們把這幾個請求的資料相加,可以得到類似於該控制器的資料. 但僅僅是相似而已.
事務控制器中的聲稱父sample(取樣)的標誌位的含義.
如果選中了該標誌位, 則你不會看到事務控制器包含的所有子元素.
這時候, 再跑一次測試, 你再看聚合報告的時候, 會發現,我們只能看到"事務控制器" 和 FAQ 頁面的測試報告資料了.