• <menu id="w2i4a"></menu>
  • logo LoadRunner 系列教程
    文檔首頁>>LoadRunner 系列教程>>LoadRunner中如何使用集合點(diǎn)進(jìn)行功能測(cè)試

    LoadRunner中如何使用集合點(diǎn)進(jìn)行功能測(cè)試


    集合點(diǎn)的用處對(duì)于LoadRunner來說意義非常大,它可以設(shè)置多個(gè)虛擬用戶等待到一個(gè)點(diǎn),同時(shí)觸發(fā)一個(gè)事務(wù),以達(dá)到模擬真實(shí)環(huán)境下同時(shí)多個(gè)用戶操作,同時(shí)模擬負(fù)載,實(shí)現(xiàn)性能測(cè)試的最終目的。由此可見,插入集合點(diǎn)主要是為了衡量在加重負(fù)載的情況下服務(wù)器的性能情況。
      舉例如下:在客戶的需求中,可能會(huì)要求系統(tǒng)能夠承受1000人同時(shí)提交數(shù)據(jù)。在LoadRunner中可以通過在提交數(shù)據(jù)操作前面加入集合點(diǎn),當(dāng)虛擬用戶運(yùn)行到提交數(shù)據(jù)的集合點(diǎn)時(shí),Loadrunner就會(huì)檢查同時(shí)有多少用戶運(yùn)行到集合點(diǎn),如果我們?cè)O(shè)定腳本運(yùn)行的虛擬用戶數(shù)為1000,等到這1000個(gè)虛擬用戶都運(yùn)行到集合點(diǎn)后,就會(huì)觸發(fā)同時(shí)進(jìn)行提交數(shù)據(jù)的操作,從而能夠測(cè)試系統(tǒng)對(duì)于這1000個(gè)用戶提交數(shù)據(jù)的響應(yīng)情況,依次來看系統(tǒng)是否滿足客戶的該點(diǎn)需求。
      集合點(diǎn)除了用于多用戶并發(fā)操作對(duì)服務(wù)器施壓的性能測(cè)試外,還可以用戶系統(tǒng)的功能測(cè)試,而且這些功能測(cè)試都是手工測(cè)試所不能實(shí)現(xiàn)的,下面以本人實(shí)際遇到的兩種情況進(jìn)行說明。
      A. 用集合點(diǎn)測(cè)試編號(hào)生成策略:
      被測(cè)系統(tǒng)為一個(gè)訂單處理的準(zhǔn)生產(chǎn)系統(tǒng),在系統(tǒng)中形成訂單的時(shí)候會(huì)自動(dòng)生成訂單編號(hào),訂單編號(hào)的生成規(guī)則是【日期+時(shí)間+4位隨機(jī)數(shù)+2位編號(hào)】,如:20091216104924276201,系統(tǒng)中要保證所有生成的訂單編號(hào)不能重復(fù),而訂單編號(hào)中關(guān)系編號(hào)是否重復(fù)的關(guān)鍵是“4位隨機(jī)數(shù)”?,F(xiàn)在系統(tǒng)的實(shí)際操作可能會(huì)出現(xiàn)同時(shí)有200個(gè)訂單錄入員提交訂單,提交訂單時(shí)會(huì)生成訂單編號(hào),要保證不會(huì)出現(xiàn)重復(fù)的編號(hào),設(shè)計(jì)測(cè)試用例:在提交訂單之前插入集合點(diǎn),虛擬用戶為200,運(yùn)行腳本,運(yùn)行結(jié)束后查看運(yùn)行后提交的訂單個(gè)數(shù),然后查看訂單編號(hào)是否有重復(fù)的情況;
      如果運(yùn)行腳本發(fā)現(xiàn)頻繁出現(xiàn)有訂單編號(hào)重復(fù)的情況,可能訂單編號(hào)的4位隨機(jī)數(shù)生成策略不能滿足需求,需要考慮采用更好的生成策略;如果多次運(yùn)行腳本未出現(xiàn)有訂單編號(hào)重復(fù)的情況,那么可以說明4為隨機(jī)數(shù)生成策略以滿足訂單編號(hào)生成的需求和設(shè)計(jì)。
      B. 用集合點(diǎn)測(cè)試互斥鎖定策略:
      被測(cè)系統(tǒng)還是訂單處理的準(zhǔn)生產(chǎn)系統(tǒng),生成后的訂單是可以被部分用戶把信息讀取到另一個(gè)系統(tǒng)中的,讀取的時(shí)候要保證一個(gè)訂單同時(shí)只能被一個(gè)用戶讀取,一旦一個(gè)訂單被一個(gè)用戶讀取到后,其他的用戶就不能再讀取到這個(gè)訂單,只能讀取到其他可以被讀取的訂單。讀取訂單時(shí)是可以選擇讀哪一個(gè)訂單,也可以不選定,不選定系統(tǒng)就會(huì)自動(dòng)分配。
      設(shè)計(jì)實(shí)現(xiàn)這個(gè)功能的時(shí)候,實(shí)現(xiàn)方式是,訂單被用戶讀取到后,就將該訂單加鎖,加鎖的訂單其他的用戶是不能讀取到的,這時(shí)系統(tǒng)就會(huì)按照策略分配其他可被提取的訂單給其他的用戶。手工測(cè)試是這樣進(jìn)行的:
      預(yù)置條件:系統(tǒng)中有多個(gè)待讀取的訂單A、B、C……,默認(rèn)讀取順序就是A、B、C……
      操作步驟:
      1、用戶1選擇讀取訂單A,讀取成功;然后用戶2選擇讀取訂單A;
      2、用戶1讀取訂單,讀取到訂單A;然后用戶2讀取訂單;
      預(yù)期結(jié)果:
      1、用戶2讀取訂單A失敗,返回正確合理的提示信息;
      2、用戶2讀取到訂單B;
      手工測(cè)試并未測(cè)試出設(shè)計(jì)和實(shí)現(xiàn)有什么樣的缺陷,功能正常。
      考慮到客戶實(shí)際使用系統(tǒng)時(shí),提取訂單的用戶是上百個(gè)的,很可能出現(xiàn)這些用戶同時(shí)讀取訂單的情況,這樣的場(chǎng)景下,幾個(gè)測(cè)試人員手工測(cè)試是不現(xiàn)實(shí)的,這時(shí)考慮設(shè)計(jì)集合點(diǎn)并觸發(fā)多個(gè)用戶同時(shí)進(jìn)行讀取訂單事務(wù)操作就比較適用。
      而實(shí)際運(yùn)行的情況是,在訂單讀取操作前設(shè)置集合點(diǎn),只使用兩個(gè)虛擬用戶在同一時(shí)刻讀取訂單就出現(xiàn)了讀取到同一訂單的情況,說明程序在實(shí)現(xiàn)上是存在缺陷的,這也很好的對(duì)手工測(cè)試不能覆蓋到的地方做了測(cè)試補(bǔ)充。
      集合點(diǎn)插入方法:
      1. 錄制時(shí),在需要并發(fā)操作的事務(wù)前直接點(diǎn)擊插入集合的按鈕;
      2. 錄制后,錄制的腳本中,在并發(fā)操作事務(wù)提交前插入,點(diǎn)擊右鍵,選擇,然后選擇后面出現(xiàn)的,輸入集合名稱,腳本中出現(xiàn),即添加集合點(diǎn)成功;
      備注:集合點(diǎn)只能插入到Action部分,vuser_init和vuser_end中不能插入集合點(diǎn)。如果想要測(cè)試系統(tǒng)所能支持同時(shí)登錄的用戶數(shù),登錄的事務(wù)要寫入到Action中,然后插入集合點(diǎn)進(jìn)行測(cè)試……

    本文轉(zhuǎn)自(spasvo.com

    點(diǎn)擊下載最新版LoadRunner試用

    <<<<2016年終盛“惠” 溫情啟幕,挑戰(zhàn)全年最低價(jià) 暢享五重奏!點(diǎn)擊查看>>>>

    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();