抽獎概率相關的測試方法

抽獎活動的中獎事件是個隨機事件,用大量的手動測試來檢驗中獎概率的正確性顯然不可取,除了手工對中獎流程,后續(xù)處理的校驗外,可以和開發(fā)配合,使用接口來測試中獎的概率是否符合預期的設計要求。

  1.思路:

 ?。?)開發(fā)提供中獎的接口,get該接口(此處需要向開發(fā)詳細了解),每次隨機返回以下四個結果:

  0--表示未抽中

  1--表示抽中1等獎

  2--表示抽中2等獎

  3--表示抽中3等獎

  (2)使用for循環(huán),多次請求該接口,并使用testNG框架中自帶的設置多次執(zhí)行方法和處理多線程的方法,使多個方法并發(fā)運行,縮短執(zhí)行時間,來模擬大數(shù)據(jù)量下的中獎事件。

 ?。?)對(2)中的中獎事件進行數(shù)據(jù)處理,獲取各類中獎事件的概率。

  2.代碼

  用例代碼LotteryTestCase.java 如下:




3.結果

  在testNG.xml中設置用例的路徑,執(zhí)行即可。綜上可看,請求接口1000次,每個方法執(zhí)行100次請求,執(zhí)行10個該方法,每個方法的結果如下:

  [TestNG] Running:

  D:\krplus-api-test\testcase\testcase\Lottery\tesNG.XML

  -------中獎次數(shù)--------

  中獎失敗的次數(shù)為16

  中一等獎的次數(shù)為2

  中二等獎的次數(shù)為9

  中三等獎的次數(shù)為73

  -------中獎概率--------

  中獎失敗的概率為0.16

  中一等獎的概率為0.02

  中二等獎的概率為0.09

  中三等獎的概率為0.73

  之后和設計中的概率進行對比即可!

  在實踐過程中的確發(fā)現(xiàn)通過這種接口測試可以發(fā)現(xiàn)概率和接口方面的問題:

  1.第一次中獎時,即使運行1000次,一等獎中獎次數(shù)也是0,后來是因為開發(fā)重寫代碼不完整所致

  2.運行時拋異常,運行單個接口發(fā)現(xiàn)有問題,如下:



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

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

  • 國家電網(wǎng)公司企業(yè)標準(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 12,306評論 6 13
  • 感謝原作者的奉獻,原作者博客地址:http://blog.csdn.net/zhu_ai_xin_520/arti...
    狼孩閱讀 14,299評論 1 35
  • 一般的抽獎管理功能,基本是在一個獎池中放一堆獎品,分別給它們設置不同的數(shù)量和概率,在獎品沒有發(fā)完的情況下,概...
    wwking02閱讀 4,163評論 1 4
  • 一般的抽獎管理功能,基本是在一個獎池中放一堆獎品,分別給它們設置不同的數(shù)量和概率,在獎品沒有發(fā)完的情況下,...
    wwking閱讀 10,441評論 3 16
  • 白雪 底特律的冬天漫長得令人絕望,十一月的氣溫接近零下二十度,走出哈德利堡的長廊,推開沉重的玻璃門,徐穆將白色羊毛...
    小貓啃芒果閱讀 518評論 1 0

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