2016-08-13 162 views
4

我想在jmeter中創建一個線程組來創建具有許多(例如5000)設備的用戶及其設備。線程之間的Jmeter線程組共享計數器

我沒有問題來創建這個測試,我想要以相關順序命名用戶和設備。

1. user1--device1 
2. user2--device2 
3. user3--device3 

我已經創建了測試,但是創造5000個用戶和設備在同一個線程組,我需要每3個請求運行5000次迭代,使用1個線程,否則我也有同樣的用戶名由多個重複螺紋(例如用3個線程)

1. user1--device1 
2. user2--device2 
3. user3--device3 
4. user1--device1 
5. user2--device2 
6. user3--device3 
7. user1--device1 
8. user2--device2  
9. user3--device3 

我的問題是:是否有任何的方式來共享線程之間循環計數器,以便與一個以上的線程(例如20個線程)創建5000用戶/設備。 這會對我有很大的幫助,因爲不用等20分鐘,創建用戶將會花一分鐘。

非常感謝!

http://pastebin.com/S1izFC9r

加解釋,我想例如maximun 9個設備(counter_max),但我想用3個線程運行。我想要的結果是這樣的

  1. 線程1 - USER1,DEVICE1
  2. 線程2 - 用戶2 - 設備2
  3. thread3 - 用戶3 - 設備3
  4. 線程1 - USER4 - device4
  5. 線程2 - USER5 - device5
  6. thread3 - user6 - device6
  7. 線程1 - user7 - device7
  8. 線程2 - user8 - device8
  9. thread3 - USER9 - device9
+1

當然,只需要一個帶有「獨立於每個用戶的跟蹤計數器」的計數器**取消選中**,它將跟蹤所有線程的計數器。或分享你的計劃,看看你目前在做什麼。 –

+0

爲了在這裏複製,我最大限度地簡化了腳本。它只創建租戶(用戶)。訂單部分不是問題。我想在不同的線程中創建連續的租戶。我剛剛附上文件 – Guel135

+0

正如我前面告訴過的,您需要取消選中櫃檯中的「爲每個用戶獨立跟蹤計數器」選項。在您的腳本中,我可以看到它已被檢查:' true' –

回答

1

我認爲你可以使用「全局」模式__counter()功能,如實現:每次的時間${__counter(FALSE,)}

  • __counter()函數返回值遞增被稱爲
  • 在「全局」模式下計數器值被跨線程共享

Counter Global Demo

所以,你應該能夠使用盡可能多線程的要求和每個線程將使用下一個計數器值與多線程創建用戶和設備。

請參閱How to Use a Counter in a JMeter Test有關使用「計數器」配置元素和函數的全面信息的文章。

+0

謝謝你,那是我期待;) – Guel135