Jmeter運(yùn)營(yíng)活動(dòng)并發(fā)測(cè)試——巧用集合點(diǎn)

? ? ? ? 在運(yùn)營(yíng)活動(dòng)測(cè)試過(guò)程中,經(jīng)常需要對(duì)秒殺活動(dòng)或定時(shí)抽獎(jiǎng)活動(dòng)進(jìn)行并發(fā)測(cè)試。那么怎樣快速便捷的模擬多用戶同時(shí)參與活動(dòng),抽取獎(jiǎng)品,進(jìn)行并發(fā)測(cè)試呢?尤其是,當(dāng)獎(jiǎng)品總數(shù)N<用戶總數(shù)M時(shí),代碼是否會(huì)存在獎(jiǎng)品多發(fā)給用戶,導(dǎo)致獎(jiǎng)品剩余總數(shù)出現(xiàn)負(fù)數(shù)的嚴(yán)重bug?

? ? ? ? 下面介紹使用輕量級(jí)開(kāi)源測(cè)試工具Jmeter進(jìn)行并發(fā)測(cè)試的方法——巧用集合點(diǎn)

? ? ? ? 以總產(chǎn)品數(shù)為3,模擬多用戶(5個(gè)用戶)同時(shí)進(jìn)行抽獎(jiǎng)并發(fā)測(cè)試為例,進(jìn)行介紹。

? ? ? ? 思路:首先在運(yùn)營(yíng)后臺(tái)配置產(chǎn)品總數(shù)為3,其次模擬多用戶登陸,最后通過(guò)設(shè)置集合點(diǎn)的方式,模擬多用戶同時(shí)進(jìn)行抽獎(jiǎng)并發(fā)測(cè)試。

? ? ? ? 下面進(jìn)行詳細(xì)介紹。

? ? ? ? 一、模擬多用戶登錄

? ? ? ? 1、準(zhǔn)備M個(gè)用戶登錄數(shù)據(jù),將數(shù)據(jù)保存到data.txt文件中,如下所示:

? ? ? ? 2、將登陸接口參數(shù)化

? ? ? ? 通過(guò)添加CSV?Data?Set?Config,將登陸接口參數(shù)化。如下圖所示:

? ? ? ? 設(shè)置好上述步驟后,再在登陸接口中引用手機(jī)號(hào)和密碼變量:${mobileNo},${passWord},如下圖所示:


二、在抽獎(jiǎng)接口前設(shè)置集合點(diǎn)

? ? ? ? 性能測(cè)試中經(jīng)常要進(jìn)行多用戶并發(fā)測(cè)試,但真正的并發(fā)是不存在的,為更真實(shí)的模擬并發(fā),可以在并發(fā)測(cè)試的接口前設(shè)置集合點(diǎn)。在本次示例中,當(dāng)所有的虛擬用戶登陸之后,都相互等待,然后一起訪問(wèn)抽獎(jiǎng)接口。設(shè)置集合點(diǎn)的方法如下:

? ? ? ? 1、在剛剛創(chuàng)建的腳本中,右鍵點(diǎn)擊?線程組---->定時(shí)器---->Synchronizing?Timer,如下圖所示:

? ? ? ? 2、將抽獎(jiǎng)接口移至集合點(diǎn)下,并在集合點(diǎn)中設(shè)置多少個(gè)用戶同時(shí)訪問(wèn)

? ? ? ? 本次示例中,設(shè)置為5個(gè)用戶并發(fā)訪問(wèn),如下圖所示:

? ? ? ? 注意,若設(shè)置5個(gè)用戶并發(fā)訪問(wèn)時(shí),需在線程組中設(shè)定,用于模擬多用戶同時(shí)測(cè)試的線程數(shù)為5個(gè)。如果線程數(shù)達(dá)不到集合點(diǎn)設(shè)置的數(shù),JMeter會(huì)一直不動(dòng),一直在等待達(dá)到設(shè)定的集合數(shù)到來(lái)。

? ? ? ? 添加完成之后,線程組線程數(shù)設(shè)定,如下所示:

? ? ? ? 集合點(diǎn)用戶數(shù)設(shè)定如下圖:

? ? ? ? 以上步驟都設(shè)置完成后,執(zhí)行結(jié)果,結(jié)果展示中,第一個(gè)用戶抽獎(jiǎng)時(shí)間為:2016-12-15?08:19:30,如下圖:

? ? ? ? 第二個(gè)、第三個(gè)用戶抽獎(jiǎng)時(shí)間都為:2016-12-15?08:19:30,如下圖所示:

? ? ? ? 至此,已達(dá)到多用戶同時(shí)抽獎(jiǎng)并發(fā)測(cè)試的目的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,661評(píng)論 19 139
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,234評(píng)論 25 708
  • 流浪流浪 駕著一艘破船去流浪 越過(guò)了馬六甲橫跨了太平洋 拿出在家附近撿的種子——撒下了希望 順著朝陽(yáng)的光 我可以到...
    比莉愛(ài)桃閱讀 204評(píng)論 0 4
  • 時(shí)間那么貴……
    不會(huì)開(kāi)花的兔子閱讀 204評(píng)論 0 0

友情鏈接更多精彩內(nèi)容