JMeter 指令碼錄製除錯綜述(轉)
錄製指令碼是效能測試的第一步,JMeter 本身不像 LoadRunner 那樣支援錄製指令碼的功能,需要藉助第三方軟體進行指令碼的錄製。最常用的軟體為 Badboy,請單擊這裡下載。
官網下載,不過官網下載的需要註冊碼。
新增元件
開啟 JMeter,新增執行緒組後,我們需要新增測試用到的相應元件資訊,此時必須掌握元件的作用域與執行順序。
指令碼除錯
新增好元件後,我們就可以進行指令碼除錯,指令碼除錯的關鍵點在於以下幾點。
(1)事務定義,其粒度粗細,會影響我們最終的效能測試指標。
(2)思考時間:其含義就是為了模擬真實使用者的行為。舉個例子來說:客戶開啟一個網頁之後,肯定會大致瀏覽下網頁內容,如果捕捉到自己想要的資訊,就會停下來瀏覽一段時間,如果沒有就會進行下一步操作(這個操作可能是關閉網頁,也可能是繼續瀏覽其他網頁)。
(3)關聯:JMeter 不支援自動關聯,需要我們手動進行關聯。
(4)指令碼引數化:想說明白這件事,就需要明白以下內容。
- 為什麼進行引數化
答案很簡單,因為不進行引數化,指令碼會跑不通,指令碼跑不通的原因最大比例就是因為指令碼沒有引數化進行的(可以告訴大家,這個原因導致的指令碼不通比例可以高達85%,另外15%的原因是因為沒有對指令碼進行關聯)。
- 需要引數化的指標有哪些
時間,請記住只要指令碼中出現了日期、時間,務必將其進行引數化,如果不進行引數化,今天可以執行的指令碼,過了今天再去執行,肯定是不通的。
一次性資料,下面舉個例子來說明下什麼樣的資料可以被稱為是一次性資料:生活中我們註冊XX網站的會員,時常會使用自己的手機號,一個手機號被註冊一次之後,肯定不會允許再重複註冊,這時手機號就是一個一次性資料。此時我們就需要將其進行動態關聯,目的是每次註冊的時候都生成一個滿足條件的、新的手機號。
(5)集合點:這是效能測試的一種策略,沒有其真實含義,後面章節中詳細介紹。
(6)檢查點:可以理解為斷言,其目的就是為了驗證某一步的操作是否正確。