• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    軟件測試中的隨機性

    發布: 2010-12-17 09:19 | 作者: 不詳 | 來源: 領測測試網采編 | 查看: 118次 | 進入軟件測試論壇討論

    領測軟件測試網

      現在,讓我們假設 n1 是某模式中第一種符號的數量,而 n2 是第二種符號的數量。則隨機生成模式中的預期游程數 μ 為:

      μ = 1 + ((2*n1*n2) / (n1 + n2))

      而方差 α2 由下式算出:

      α2 = ((2*n1*n2) * (2*n1*n2 - n1 - n2)) / ((n1 + n2)2 * (n1 + n2 - 1))

      這兩個公式均根據概率論得出。我們可以用平均值和方差來確定某個特定模式是隨機過程結果的概率。假設我們以兩個符號的模式開始,該模式表示為以下字符串:

      string s = "XOOOXXXXOXXXXXXXOOOOXXXXXXXXXX";

      盡管可以手動計算該模式中 X 和 O 的數量以及游程數,但讓我的程序代勞會更輕松。首先,我將確定該模式字符串中的兩個符號類型:

      char kind1 = s[0], kind2 = s[0];

      for (int i = 0; i < s.Length && kind1 == kind2; ++i)

      {

      if (s[i] != kind1) kind2 = s[i];

      }

      我將模式字符串中的第一個字符指定給第一種符號,接著掃描整個模式字符串,直到找到第二種符號類型。接下來,將執行兩項簡單的錯誤檢查,以確保該模式中至少存在兩種不同字符并且存在的字符類型不超過兩種。

      if (kind2 == kind1)

      throw new Exception("字符串必須具有兩種不同的類型");

      for (int i = 0; i < s.Length; ++i)

      if (s[i] != kind1 && s[1] != kind2)

      throw new Exception("字符串只能具有兩種類型");

      如果要考慮性能,則可將這三次對模式字符串的遍歷重新轉換為僅僅一次遍歷,但清晰性可能會受到一些影響。

      現在,我就可以開始計算模式中每種類型符號的數量以及游程數了:

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>