• <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的總結

    發布: 2009-6-02 09:36 | 作者: 網絡轉載 | 來源: 測試時代采編 | 查看: 418次 | 進入軟件測試論壇討論

    領測軟件測試網 工具軟件一段時間不用就容易手生,有個備份整理以后復習都事半功倍。之前就打算好好弄一下一直拖著沒動筆。網上QTP的學習資料大把大把,那些基礎的理論東西看過就過了,實踐才是王道,操作幾個小時勝過看一天的說明文檔。這里列一些我在用QTP時遇到印象比較深刻的問題和解決方案,其他的小問題屬于QTP熟練操作的范疇就不贅述了。因為項目需要接觸了差不多三個月的QTP,自知離QTP高手還有段距離,學無止盡,有學習QTP的朋友歡迎發表高見大家互相進步~

      1、QTP自帶函數print

      調試代碼的時候一般習慣用Debug或者Msgbox函數。監視變量運行時的值用Msgbox,個人感覺不方便的一點就是每次在msgbox窗口彈出來后,腳本會暫停執行,等到鼠標點確定后窗口才會關閉繼續運行后續腳本,真的很煩,做自動化測試的時候我真的是已經懶到不愿意動一根手指頭。某天無意發現QTP自帶的函數print也可以實現查看變量信息,窗口是非模式的,運行時變量值在QuickTest Print Log窗口上輸出但腳本不用停下來等,而且可以在一個session運行完了之后查看所有需要監視的變量值。

      Eg:

      Dim p

      p=Browser("xx").page.("xx").webedit("object_name").GetROProperty("value")

      print p

      2、calender控件

      一般日期格式字段是同時支持手填日期格式的text field和用鼠標點日歷控件選擇。但是在DMPOD系統里發現部分日期格式的字段居然disable了用戶手動輸入的屬性,只能靠點日歷控件來選擇日期。結果錄到的腳本全變成了img.click,無法回放。查了很久突然某一天找到了辦法,繞過這個控件,強制轉換它的屬性值。

      Eg:

      Dim var_object

      Set var_object=Browser("xx").page("xx").webedit("calendar_name").Object

      Var_object.readonly=false

      Browser("xx").page("xx").webedit("calendar_name").set "4/24/2009"

      3、homepage menu

      曾經困擾了我很久。Homepage dropdown menu 需要鼠標移動到主菜單名上才會顯示子菜單目錄,click子菜單目錄進入頁面。QTP總是無法捕捉到鼠標移動帶出子菜單目錄這個操作,解決辦是用mouseover。

      Eg:

      Browser("xx").page("xx").webelment("homepage menu name").FireEvent "onMouseOver"

      Browser("xx").page("xx").webelment("sub menu name").Click

      4、自定義checkpoint

      在頁面提交保存后,自定義設置一個檢查點,通過判斷某個變量值是否滿足預期,如果是,則保存成功,如果不是則保存失敗。

      Eg:

      If Browser("xx").page.("xx").webedit("object_name").GetROProperty("value")="AA" Then

      Reporter.ReportEvent micPass,"AA checkpoint","page is saved successfully"

      Else Reporter.ReportEvent micFail,"AA checkpoint","page is not saved successfully"

      End If

      5、編程性描述語言識別對象

      剛開始一段時間,一直不知道QTP除了用對象庫識別對象外,還可以用編程性描述語言。后來查了網上的資料才明白過來。

      第一種方法:

      Browser("CreationTime:=0").Page("index:=1").WebEdit("name:=" & edit).Set "ha"

      我沒有嘗試過,總感覺不如對象庫來的方便,在對象庫中可以直接選擇和修改用來識別對象的屬性,以及highlight object等功能。

      第二種方法:

      碰到過一個Case是,頁面上table A里的checkbox元素數量每次運行時都是不相同的,隨著頁面上另一個對象B的值而改變,對象B的值又是參數化的,最后造成checkbox數量運行前無法預知。操作時又需要每次都選上所有的checkbox。最后用這種識別對象方法可以順利實現。

      Public function SelectAllCheckBox()

      Set NewObject = Description.Create '創建滿足下面三個條件的對象集

      NewObject("micclass").value ="WebCheckBox"

      NewObject("html tag").value="INPUT"

      NewObject("class").value = "checkBox_class"

      Set NewObjects = Browser("xx").Page("xx").ChildObjects(NewObject) '實際運行時的對象

      Numbers = NewObjects.Count 'checkbox的個數

      For i = 0 to NewObjects.count –1 '循環

      NewObjects(i).Set "ON" '每一個checkbox都set on

      Next

      End Function

    延伸閱讀

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

    TAG: qtp QTP 軟件測試

    21/212>

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