Jmeter-----隨機產生手機號後8位並去重,來進行註冊手機號的壓測

來源:互聯網
上載者:User

標籤:時間戳記   value   debug   valueof   可重複   手機   存在   不重複   width   

  要求:對註冊介面進行100000次壓測,手機號已126開頭,後面的8位元不限

  前言:在進行測試中,我們需要對註冊介面進行壓測100000次,那麼就要求手機號碼每次填寫的不一致,否則手機號使用一次後會出現該手機號碼登入的情況,為了避免這種情況的發生,我們對手機號碼的填寫通常有2種方式,1、使用random函數隨機產生,2、手動在excel表中寫100個號碼,通過添加配置元件CSV data set config來擷取。顯然我們會選擇第一種實現方式較為方便。以下我們來看如何?。

 

第一種方法:

 

  直接使用函數助手,利用__random函數來產生8位元。可能存在的問題:產生的數可能會出現重複

 

  

  

第二種方法:

 

  採用時間戳記+隨機數的方法來避免重複,並且產生不重複的8位元

  1、添加採樣器 BeanShell Sampler,並在中填寫對應的操作,重點部分

   

//為了避免手機號後8位出現重複,因此採用時間戳記+隨機數phone=${__time(/100000,)} + ${__Random(1,100000,)};String a = String.valueOf(phone);   //將phone轉為字串,因為手機號的要求類型為charvars.put("phone",a);      //將字串a設定為變數vars.get("phone");      //在debug sample中查看phone的取值log.info("8888888888888哈哈哈:"+a);    //在logview中列印查看取值

  

 

  這裡,前半是取一個10位的時間戳記,後面是取1個[1,100000]的隨機數字,可重複,這個隨機範圍越大,最後產生的隨機數越不容易重複,當大並發時,隨機數取的很快,所以還是有極低可能重複的。因此在功能內,盡量拉大隨機數範圍。 
  ${__time(,)}則是去當前毫秒時間,13位的數字,也可以用來取更精確的時間戳記 

 

  2、將設定的變數添加到請求中

 

  

 

  3、添加“查看結果樹”來查看運行結果,和添加“Bebug Sampler”來查看phone的取值

 

  

  

 

  

Jmeter-----隨機產生手機號後8位並去重,來進行註冊手機號的壓測

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.