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

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

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

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

    軟件測試中通用數據生成方法

    發布: 2009-7-15 17:58 | 作者: 網絡轉載 | 來源: 領測軟件測試網 | 查看: 133次 | 進入軟件測試論壇討論

    領測軟件測試網

      第三步:循環輸出數據

      /* 循環輸出數據。 */

      for($i = 0; $i < $dataCount; $i ++)

      {

      foreach($fields as $fieldName => $field)

      {

      $pointer = $field['pointer'];

      /* 如果指針已經到到了列表的尾部,重新指向列表開始。 */

      if($pointer == count($field['list'])) $pointer = 0;

      echo $field['prefix']; // 輸出前綴。

      echo $field['list'][$pointer]; // 輸出當前指針所對應的列表中的取值。

      echo $field['postfix']; // 輸出后綴。

      $pointer ++;

      $fields[$fieldName]['pointer'] = $pointer;

      }

      echo "\n";

      }

      這樣我們用了不到 50 行的代碼就完成了一個基本的數據生成工具。這其實已經可以滿足基本的數據生成任務了。但是還需要進一步進行完善。

    需要進一步完善的地方

      第一:數據的擴展性

      雖然 list 類型已經足夠靈活,但有時候還無法滿足需要。比如一個比較復雜的字段,由若干小字段組成。這時可以將這個復合字段再通過一個 ini 文件來定義,這樣就有了無限可能。

      比如,我們在 example.ini 文件中增加一個日期的字段,格式為 yyyy 年 mm 月 dd 日的格式

      清單三:example.ini 中新增一個字段

      [field5]

      prefix=""

      datatype="custom" " 定義這個字段的數據類型為 custom

      datacfg="custom.ini" " 定義這個字段的配置文件為 custom.ini

      postfix=""

      清單四:custom.ini

      [field5.1]

      prefix=""

      datatype="list, range=[1980-1999]"

      postfix=" 年 "

      [field5.2]

      prefix=""

      datatype="list, range=[1-12]"

      postfix=" 月 "

      [field5.3]

      prefix=""

      datatype="list, range=[1-31]"

      postfix=" 日 "

      這可以通過 php 中的遞歸函數來實現這個解析。即當解析到一個字段發現是自定義類型的時候,就讀取這個字段所對應的 ini 配置文件,然后再解析它的每一個字段。具體的代碼就不給出了,讀者朋友們可以嘗試實現。

      第二:列表可以更加靈活

      列表 range 參數還可以更加靈活,比如:

      1. 可以指定步長:range=[1-100:2],表示從 1 到 100,步長為 2 遞增。

      2. 可以指定輸出的格式:range=[1-100:2]&format=0.2f,這個地方的 format 可以是 sprintf 函數的格式標簽。

      3. 可以指定是否隨機,F在生成的數據是按照列表中的順序來生成的?梢酝ㄟ^一個 rand 參數來指定是否隨機。

      第三:不同的輸出格式

      我們現在輸出的是行與列的格式,其實我們還可以定義其他不同的輸出格式。比如輸出為數據庫的 insert sql 語句。輸出為 xml 格式的數據。這些實現起來都不是特別的麻煩,代碼中做些處理就可以了。

      結束語

      PHP 是一款非常優秀的腳本語言(雖然它主要用在 web 開發上)。使用 PHP 可以快速地寫出很多小工具來幫助我們來完成某個任務。本文只是給出了一個數據生成方法的簡單實現,各位讀者朋友完全可以發揮自己的想象,開發出更加靈活、好用的工具來。具體到我們公司的應用,我們現在基本上可以使用這個工具來生成各種各樣不同的測試數據。而且有了這些固定的測試數據,就可以實現自動化測試。

    延伸閱讀

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

    33/3<123

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