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

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

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

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

    新一篇: 手工測試與自動化測試的優缺點

    發布: 2008-5-06 17:43 | 作者: Zeng YueTian | 來源: Zeng YueTian博客 | 查看: 611次 | 進入軟件測試論壇討論

    領測軟件測試網
    作者Zeng YueTian,轉載請注明出處http://blog.csdn.net/yuetiantian/
     
    相對于其他語言而言,4Test提供了兩種動態數組,其一是Array,另一個是List。但是它們的使用方法和其他常見的語言略有不同,所以有必要專門介紹一下它們。
    Array關鍵字用來聲明數組變量,它的語法最主要的有兩種:
    (1)Array [維數1][維數2]… Of 數據類型 數組名
    (2)數據類型 數組名[維數1][維數2]…
    注意,在array中,所有的數據類型必須一致。你必須在定義該數組的時候指定它的類型和維數。
    Array由層次型的數據組成,每一層被稱為一維。每層都包含指定數目的元素或者子數組。最下面一層的葉子節點包含著真正的元素,其他的層包含的是子數組?紤]下面的數組定義:
    ARRAY[2][3][4] OF INTEGER MyArray
    該數組在第一層有兩個子數組,在第二層上對于每個第一層的子數組都有3個子數組,對于每個第二層的子數組都有4個元素。所以,第一層有2個子數組,第二層有6個子數組,整個數組包含24個元素。
    Array數組的的大小必須在1到2147483647 (MAXINT)之間。并且請注意array2[2,10,5]和array2[2][10][5]代表的是同一個元素。
    你可以使用LIST的構造符號{},當你使用大括號來聲明一個array數組對象的時候,4Test隱式地將產生的LIST轉換為一個array。你不可以使用大括號{}來修改一個已經存在的array,你只能用大括號{}來初始化一個array。
    下面是一個使用array的例子:
    ARRAY[50] OF STRING array1
           ARRAY[20][20][20] OF INTEGER array2
           testcase array_example ()
              // 第一個array中的第39個元素
              array1[39] = "alphabet soup"          
                    
              // 下面兩種方法存取的是同一個元素
              array2[2, 4, 2] = 5
              Print (array2[2][4][2]) //prints 5
          
              // 初始化一個數組,從索引1開始,并且覆蓋曾經有的值
              array1 = {...}
                 "foo"
                 "bar"
              // 另一種可選的初始化方法
              array1 = {"foo", "bar"}
     
    在知道了array的基本概念之后,讓我們來看看常用的array數組函數。
     
    1. ArrayFind()
    該函數用來查找數組中某個元素的位置。
    注意:silktest中數組的下標是從1開始的,這點和許多類C的語言是不同的。
    該函數的原型為iPos = ArrayFind (aArray, aElem [, iMaxIndex])
    其中iPost是返回的元素位置,數據類型為Integer。aArray是想要查找的數組名,數據類型是Array of AnyType。aElem是想要查找的元素,數據類型是AnyType。iMaxIndex為可選參數,表示最大搜尋范圍,數據類型是integer。
    該函數在找到要找的數組元素時,返回其索引。如果指定了iMaxIndex,ArrayFind將只查找到第一個iMaxIndex,否則將查找整個數組。如果沒有找到想要查找的元素,該函數將返回0.當對多維數組進行查找時,需要指定想要查找的子數組。下面是一個例子:
    INTEGER aiTempPerDay[5][4]
           testcase arrayfind_example ()
              aiTempPerDay = {...}
                 {10, 12, 8, 17}
                 {-1, 0, 17, -9}
                 {14, 1, 1, 0}
                 {75, 32, 18, 103}
                 {9, -7, -2, 3}
              Print (ArrayFind (aiTempPerDay[1], 8))       //打印 3
              Print (ArrayFind (aiTempPerDay[5], -7))      // 打印2
              Print (ArrayFind (aiTempPerDay[4], 103, 3)) // 打印0
              Print (ArrayFind (aiTempPerDay[2], 20))      // 打印0
              Print (ArrayFind (aiTempPerDay, {-1, 0, 17, -9})) // 打印2
     
    2.ArraySize()
    該函數返回一個數組里面的元素個數。其原型為:
    iNumElems = ArraySize (aArray [, iDim])
    其中iNumElems表示數組中元素個數,數據類型是integer,aArray是想要計算的數組名,數據類型是Array of AnyType。iDim是可選參數,其數據類型為integer,表示想要計算的數組的維數,用在需要對多維數組的某一維進行統計的時候,如果統計的數組不是多維的,該參數必須是1。
    注意,ArraySize函數不能用于我們下一節將要講到的List數據類型。因為ArraySize()是用來統計數組的尺寸的,但是List變量是沒有尺寸大小的。下面這個例子用來統計一個數組aiTempPerDay第二維的大小。iElements = ArraySize (aiTempPerDay, 2)
    另外,函數ArraySize常常用來檢查是否一個數組的大小發生了動態的改變。
     
    1.       ArrayResize()
    改變數組中元素的個數。其函數原型是:
    ArrayResize (aArray, iNewSize [, iDim])
    參數aArray表示數組名,它是一個inout的變量,數據類型為Array of AnyType。iNewSize是新數組的大小,數據類型是integer,iDim是一個可選參數,表示需要resize的數組的某一維,如果數組不是多維的,那么該參數必須為1.其數據類型是integer。
    下面是一個ArrayResize函數的使用樣例:
    INTEGER aiTempPerDay[5][4]
           testcase arayresize_example ()
              aiTempPerDay = {...}
                 {10, 12, 8, 17}
                 {-1, 0, 17, -9}
                 {14, 1, 1, 0}
                 {75, 32, 18, 103}
                 {9, -7, -2, 3}
              // 將第2維的大小從4改成8
              ArrayResize (aiTempPerDay, 8, 2)
     
    2.       ArraySort()
    該函數在一個數組中將各元素排序,其函數原型如下:
    ArraySort (aArray [, iMaxIndex])
    參數aArray不用多說,是數組名。不過它的類型不是Array of AnyType,而是inout Array of Boolean, integer, real ,string 或者是ENUM。如果一個多維的數組,你可以指定其子數組進行排序。iMaxIndex是一個可選參數,表示最大排序范圍。如果省略該參數,表示對整個數組進行排序。
    注意,在windows里面silktest使用基于字典的算法進行排序。
    如果要對string的數組進行比較并且用ASCII值比較,需要在partner.ini文件Runtime選項中添加一行AsciiSort=TRUE。這個設置會在比較string的時候有用,而不僅僅是對list of string的比較有效。
    ArraySort函數會改變傳入的數組,下面是一個例子:
    INTEGER aiTempPerDay[5][4]
           testcase arraysort_example ()
              aiTempPerDay = {...}
                 {10, 12, 8, 17}
                 {-1, 0, 17, -9}
                 {14, 1, 1, 0}
                 {75, 32, 18, 103}
                 {9, -7, -2, 3}
              ArraySort (aiTempPerDay[3])
              Print (aiTempPerDay[3])     // 打印: {0,1,1,14}
              ArraySort (aiTempPerDay[5], 3)
              Print (aiTempPerDay[5])     // 打印: {-7,-2,9,3}
     
    3.       IsArray()
    測試一個表達式是否是一個array。
    該函數的原型為:bTest = IsArray (aExpression)
    其中bTest是Boolean類型的返回值。aExpresstion是需要測試的表達式,它的類型是AnyType。下面是一個例子:
    testcase IsArrayExample ()
              INTEGER i = 1
              ARRAY[2] OF STRING asFruit = {...}
                 "apples"
                 "oranges"
              Print (IsArray (asFruit)) // 打印: TRUE
              Print (IsArray (i)) // 打印: FALSE

    延伸閱讀

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

    TAG: 手工 優缺點 自動化


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(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>