QTP使用心得

在2012年的時候入門總結的一點內容,時間太久了,就不改了,湊合看。

總結:

2.內容簡介
對那些方面進行了改進可  與區別合成一個
        1.加快測試速度,大大降低重複性的驗證時間
           例如:需要改進的地方:如果審覈通過可直接使用批量審覈,不用進入審覈頁面。
  經測試發現,以例行簡易工單爲例:三個審批人的時候,進入工單審覈頁面審覈完成時間99秒,使用批量審覈完成時間77秒,節約22秒。故最好使用批量審覈通過的情況
  一個節點審批人進入工單審覈時間在6.5秒左右,批量審覈平均時間4秒。
        2.對固定業務流程的審覈準確性提高
與手動測試的區別
        1.人工審覈關注點多,探索性較強;
        2.人工測試花費較多重複勞動,工具的使用可簡化
        3.需考慮腳本維護
3.注意事項
測試中遇到的問題,解決方法
1.入門利器
三種錄製方式:正常、模擬、低級
模擬錄製的例子:
適用:在無法正常識別的情況下,使用模擬錄製,記錄鼠標移動軌跡和鍵盤操作,達到錄製的目的。
要求:固定坐、標錄製完成後生成一個文件,記錄了所有的操作,回訪時按照此操作做一遍。

2.描述性編程(WEB對象識別,後續強制性)
    1.回訪時出現General run error.原因判斷是qtp定位速度太快,當網絡較慢,頁面未加載成功時,不能獲取對象的值,所以是有時出現,有時不出現。解決方法 wait 2
    2.選擇浮層中,出現使用描述性編程後,會出現描述的對象中的子對象無法識別的情況。
            原因:描述性編程的“後續強迫性”,也就是說,如果前面的內容使用了描述性編程,後面對象的識別必須使用同樣的方式
            例如:Browser("***管理系統_3").Page("***管理系統").Frame(bjFrame).WebElement("innertext:=383").Click
             在第二個webelement中,由於前面frame使用了描述性的bjframe對象,故此段"WebTable"應該爲“innertext:=383”
實例:
formname="_eos_modal_dialog.*"'使用正則表達式匹配前面不變的字符
bjFrame("title").value = "選擇技術經理"'獲取頁面名稱爲選擇技術經理的對象
bjFrame("name").value =formname
set oframe =Browser("***管理系統").Page("***管理系統_2"). ChildObjects(bjFrame)'獲取所有子對象
'print "name:"& oframe(0).GetROProperty("name")'打印
bjFrame("name").value =  oframe(0).GetROProperty("name")'這個的名稱
    3. 在使用單個屬性不能識別的時候,可使用對象中的所有值,直到識別爲止

3.正則表達式

        5.使用前段字符串:
      Dim  LeftString,Mystring
      Mystring=bjFrame(1)
      LeftString = Left(Mystring, 30) ' 截取字符串中的前31個字符,獲取frame的name
      'print "name:"& LeftString'打印

4.測試時間(時間級數遞增、像九連環一樣,使用外部批量審覈)
    1.根據***系統的審批流程特點制定測試方案,以主機系統維護工作單爲例
        1.共計18個審覈節點,絕大部分節點都有審覈通過、審覈不通過、返回三個按鈕,部分節點沒有審覈不通過按鈕
        2.程序員確認簽字處需添加經理的人員,此節點單獨提出作爲一個部分。
        3.每個審覈節點審覈使用一個“審覈場景”即可處理。
        4.由於需檢查每個節點的審覈通過與審覈不通過兩個路徑,故每次審覈不通過後退回到工單提交處,從頭開始執行審覈路徑,計算時間爲:
                條件:每次審覈平均用時6.5秒,總共18個節點,每次不通過則從節點1開始重新開始審覈
                單獨審覈時間:(1+2+3+……+18)*6.5=1111.5s。約18分鐘審覈完成。
                總時間:單獨審覈時間+提交時間+特殊節點審覈時間=約19分鐘。
        5.手動審覈時間,平均一條審覈記錄爲40s,自動化提升了6倍的效率。大大降低了測試時間。如果加入批量審覈則有可能達到10倍。

5.檢查點的加入


6.Datatable的使用
數據存儲的地方,將腳本中的數據參數化,即可使用表格中數據進行測試。
設置方式:在關鍵字視圖中選擇對應元素的Value欄,選擇呢右邊的<#>,可配置爲DataTable,自由輸入name,確認後創建參數化成功。
默認配置爲Golbal sheet,所有的action都可以使用本參數。也可配置爲特定的action。
    1.使用Tool|Data Driver檢查哪些輸入可以進行參數化。
    2.使用數據驅動方式進行測試

7.腳本維護與業務更新
    1.***管理系統在流程審覈、工單提交頁面元素校驗上適合用自動化測試
    2.***管理系統流程業務變動較快,腳本維護成本高
    3.適合較大數據量對比的測試
流程改進方法
1.思維方式改變
2.區分節點的工作

4.指導意義
對今後工作的指導作用(敏捷方法)
    1.迴歸測試、不變的功能
    2.大頁面校驗測試
    3.基本技能

5.改進方式
有待改進的地方
    1.腳本的可移植性
        1.前期在添加對象時,對選擇的對象處理爲常量,造成在系統人員變動時,可能會找不到對象。解決方式:將添加的對象設置爲變量,使用描述性編程來識別。可增強腳本的健壯性。
        2.
    2.多場景腳本執行。錯誤的處理,無人值守測試
    3.更多的項目工作支持
        僅對***管理系統進行了項目實踐,還存在一些問題,對其他的上線系統中未遇到的知識點還了解不夠。

6.如果不能識別,則定義爲一個虛擬對象,進行錄製和回放。路徑:tool|virtual object
7.Utility對象:調用windows API
    SystemUtil對象:控制windows進程
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章