1. 程式人生 > >Jmeter原始碼學習心得

Jmeter原始碼學習心得

1.TestPlan和WorkBench GUI類是直接載入的,因此左邊的樹形選單開始啟動Jmeter時顯示也是這兩個,預設寫死了的!可以改原始碼!在MenuFactory中有相應程式碼。

2.其它的GUI類和TestBean子類需要從ext下的jar包中尋找載入,會根據這些來建立選單項等等,這些類特別是GUI類需要實現相應的函式方法建立選單項。

3.介面的國際化用messages.properties資原始檔描述,如果想修改其顯示,修改這個檔案即可,用native2ascii.exe可進行來回轉換,-reverse是逆向轉換。

4.每一個配置元件,只要擴充套件自ConfigTestElement即可(模仿CSVDataSet),其屬性的屬性採用工具對應的BeanInfo類來進行設定;對屬性設定了屬性之後,比如屬性的預設值,是否允許為空等,可以在今後使用這個屬性時,獲取相應的約束值,方便程式設計。;

5.每一個Sampler預設配置元件,擴充套件自AbstractConfigGui即可,其在選單和介面中的顯示項,通過在messages.properties裡配置對應的key,並在getLabelResource方法中返回key即可,可參考FtpConfigGui的實現情況,由於涉及的類少,只需要新建三個類,複製一份參考著實現自己的即可。

6.每個Sampler配置元件,只要擴充套件自AbstractSamplerGui即可,通常與Sampler預設配置元件類似,只需要加入自己特殊的佈局即可。

7.AbstractSampler類是真正起作用的,但卻是螢幕上看不到的元件,它與Sampler配置元件或Sampler預設配置元件對應起來,每次執行緒迭代時,都會作用於它執行一次sample方法!返回結果SampleResult供其它元件呼叫顯示。

8.有一個HttpSampler,另一個是HttpSampler2,HttpSampler2採用HttpClient實現,代理請求時使用;HttpSampler採用Jmeter自己的實現,基於Java底層類庫,Cookie等Jmeter自己均有一套實現。

仔細研究一下jdbc和ftp的sampler、CSV DataSet即可,因為類很少。呵呵。研究透,即可對二次開發心裡有底了。