1.Jemter元件和組件
1.1 元件和組件的概念
? ? ? ? 元件:多個功能相似的的組件的容器,類似于一個工具箱。
? ? ? ? 組件:實現某個特定功能的實例,類似于工具箱中的螺絲刀,十字扳手...
1.2 作用域和執行順序
1.2.1 作用域
例子:
1.2.2 執行順序
? ? ? ??
1.3?線程
線程通過測試計劃右鍵添加,線程又分為:setUP線程組、tearDown線程組、開放模型線程組、線程組,下面將分別介紹這幾個的區別:
1.3.1 setUP線程組
? ? ? ? 在執行整個測試計劃之前執行的操作,和unittest中的setUp功能基本一樣
1.3.2 tearDown線程組
????????在執行整個測試計劃之后執行的操作,和unittest中的teardown功能基本一樣
我們可以看出不管setUp和tearDown的位置在哪,它們都是在固定的時間執行。
1.3.3 線程的參數設置
1.4?取樣器
? ? ? ? 真正執行的請求,和postman中設置請求相同,這里以http請求為例:
1.5?邏輯控制器
1.6 前置處理器
? ? ? ? 一般用來實現參數化,添加自定義的用戶參數,然后在請求體中使用 ${參數名} 使用
可以看到兩個線程的請求分別對應我們設置的用戶1和用戶2的值
1.6 后置處理器
2.參數化
2.1 使用用戶定義的變量
? ? ? ? 使用場景:一個或多個用戶需要需要使用不同的值時
? ? ? ? 路徑:添加--前置處理器--用戶參數
這里的用戶數就對應線程數,如果用戶數<線程數,那么用戶變量會被重復使用,例如四個線程只有三個用戶,那么第四個線程就會得到第一個用戶的值,類似于循環隊列。
通過 ${參數名} 使用
2.2 使用CSV文件
? ? ? ? 使用場景:一個用戶循環多次并且每次需要不同的值時
? ? ? ? 路徑:添加--配置原件--CSV Data Set Config?
因為這里是三條數據,所以需要配置線程為:
2.3 函數方式
? ? ? ? 使用場景:多個用戶多次循環需要使用不同的值時
? ? ? ? 路徑:工具--函數助手對話框--counter函數
True,每個用戶擁有自己的計算器的意思是:分別用變量計單個用戶循環的次數
False,使用全局變量的意思則是:使用一個全局變量計算循環了多少次
點擊生成后,直接復制函數字符串到需要的位置,和普通變量使用方法一樣
可以看到請求的參數number的值在不斷增加。