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

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

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

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

    軟件測試工具QTP中一些基礎代碼結構累積

    發布: 2010-8-04 10:18 | 作者: 網絡轉載 | 來源: 領測軟件測試網采編 | 查看: 152次 | 進入軟件測試論壇討論

    領測軟件測試網

    軟件測試工具QTP中一些基礎代碼結構累積

    1 生產隨機數列
    第一種方法———————————–
    randomize’更新反回的數據
    funcation rand(k,n)
    n=int((k-1)*rnd+1)
    rand=n
    end funcation
    第二種方法
    n=randomnumber.value(1,255)
    2 當運行到表中的某一行,自動導出表中的所有數據
    row=datatable.getcurrentrow
    if row="5" then
    datatable.export("d:data.xml")
    end if
    3 webedit("txtpass").setsecure"sdsdf…."
    如果參數化密碼,可以直接在數據表中寫入未加密的密碼,它會自動識別,即不用把setsecure改為set
    4 如果彈出對話框就獲取上面提示信息并與表中的信息對比,不統一證明彈出的提示出錯,主要用來驗證
    if browser("web_name".dialog("dialog_name").exist(1) then’如果不出現=false
    error_message=browser("web_name".dialog("diaglog_name".static("用戶密碼錯誤!").getRoproperty("text")
    if error_message<>(datatable.value("error_info"))then
    msgbox(error_message)
    end if
    browser("web_name").dialog("diaglog_name").close
    end if
    這里我總結了兩點技巧:
    一是:對于dialog中,雖然提示信息對象名稱是"用戶密碼錯誤",但如果信息對象名稱是“該用戶不存在”,不用更改會自動識別,我想主要是錄制第一遍 時,“用戶密碼錯誤”只是讓運行時能找到這個控制,而不管它是什么內容,因為在對象倉庫中,text不是決定該對象的屬性
    二是:如果對于提示信息比較長的,可以用mid(error_message,n,m)取一部份特征提示信息進行驗證,這樣我想可以節省處理時間,又可以避免長度以及空格等字符的處理
    5 在運行時,向某一個單元格賦值: datatable.value("kai",dtlocalsheet)="nanjing"
    datatable.value("num")只在global形式下的一種省略形式;完整形式
    是datatable.value("num",dtlocalsheet)
    —–取得某一具體行的值:
    datatable.setcurrentrow(n);
    msgbox(datatable.getsheet("global").getparameter("kai").Rawvalue)
    或者kk=datatable.Rawvalue("kai","action1")
    —–在run-time期間,添加一個action和參數
    kk=datatable.addsheet("name").addparameter("kai","ddd").name’/value
    6 with dialog("name")’可以省好多代碼,看著也簡潔
    content=.wintreeview
    end with
    7 wintreeview.select(item)(根是0,列表第一個也是0)
    wintreeview.getcontent
    wintreeview.getitem(整行)+";"+
    winlistview.getitem(行中的第一個字符段)
    wincheckbox("").set"off"’/on
    8 數據庫檢查點:
    sub getdata
    set con=createobject("adodb.connection")
    con.open("descrīption=mod;driver=sqlserver;server=hpsqlserver;uid=sa;"&_
    "pwd=11111;APP=qtp;WSID=hp;database=MOD31" ‘用sqlserver方式
    Con.open "DRIVER = {Microsoft Access Driver (*.mdb)};DBQ=D:Testdb.mdb" ‘用access方式
    set record=createobject("adodb.recordset")
    sql="select * from m3_program" ‘選擇具體滿足一條件的:sql="select* from m3_program where "
    record.open sql,con
    if(not record.eof) then
    record.movenext
    msgbox("p_name")
    end if
    record.close
    set record=nothing
    con.close
    set con=nothing
    end sub
    ‘如果沒有查到內容,在結果中不會報錯,也不會彈出窗口
    9 vbcr—-chr(13)回車符
    vblf—-chr(10)換行符
    vbcrlf—-chr(13)+chr(10)結合
    10 從step run has two ways(一是在key-driven頁面,另一個是在代碼頁面,前者走完項目,后者只是本acton第一行
    11 對于時間,日期等的格式檢查(一種是正則表達式,另一種是輸出對比,如果
    不好對比,用mid截取一部分對比)
    12對于一些列表框或樹結構,如果發生結點名稱發生變化,此時如果報沒有彼配的對象,此時可以把更改后面的名稱如_2"
    13;對于動態變化的對象,要分清是對像還是屬性;對于屬性可以用gettoproperty("ddd");得到;而對于由于動態無法識別對
    像可以用描述性腳本:
    如:Set ōbject= Descrīption.Create()
    Object("regexpwndclass").Value="HtmlButton"
    Object("regexpwndtitle").Value="登陸"
    browser("ss").page("a").button(Object).click
    14:對于屬性是變化的,有時可以把該屬性從識別對象里刪除
    15:從系統的文件中獲取信息及刪除文件
    get_file_infor("c:she.mpg")
    function get_file_infor(url)
    dim fso,f
    set fso=createobject("scrīpting.filesystemobject")
    set f=fso.getfile(url)
    msgbox(f.datecreated)
    f.name:f.size:f.type
    fso.deletefile(url)’/////刪除文件
    end function
    ——–獲取文件夾里所有文件信息
    get_folder_infor("c:kai")
    function get_folder_infor(folder)
    dim fso,f,f1,n
    set fso=createobject("scrīpting,filesystemobject")
    set f=fso.getfolder(folder)
    set fc=f.files
    for each f1 in fc
    select case f1.name
    case"kai.mpg","she.mpg","dd.mp3"
    end select
    next
    end function

    16,四舍五入可以在后面+0.5,進行自動解決
    17,y=——-waitproperty("visible",true,10000)
    18,on error resume next
    on error goto o
    19 window("").wintreeview("systreeview32").TYpe micctrldown+"p"+micctrlup
    20,定義數組 name=array(1,2,"aa","bb");name(0)=1
    21進行日期YYYY-MM-DD的格式檢查 :
    Function RegExpTest(patrn, strng)
    Dim regEx, Match, Matches ‘ Create variable.
    Set regEx = New RegExp ‘ Create a regular expression.
    regEx.Pattern = patrn ‘ Set pattern.
    regEx.IgnoreCase = True ‘ Set case insensitivity.
    regEx.Global = True ‘ Set global applicability.
    Set Matches = regEx.Execute(strng) ‘ Execute search.
    For Each Match in Matches ‘ Iterate Matches collection.
    RetStr = RetStr & "Match found at position "
    RetStr = RetStr & Match.FirstIndex & ". Match Value is ‘"
    RetStr = RetStr & Match.Value & "’." & vbCRLF
    Next
    RegExpTest = RetStr
    End Function
    date_pattern="^((((19|20)(([02468][048])|([13579][26]))-02-29))|((20[0-9][0-9])|(19[0-9][0-9]))-((((0[1-9])|(1[0-2]))-((0[1-9])|(1d)|(2[0-8])))|((((0[13578])|(1[02]))-31)|(((01,3-9])|(1[0-2]))-(29|30)))))$"
    result_message=RegExpTest(date_pattern, inputbox("請你輸入要檢查的時間:"))
    Select case result_message
    Case ""
    msgbox("你輸入的日期格式與標準不匹配")
    case else MsgBox(result_message)

    延伸閱讀

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

    TAG: qtp QTP 工具 基礎 結構 軟件測試


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