如何管理QTP中的對象庫

使用QTP錄製一些腳本再回放,這不難,難的是一個測試團隊共同開發腳本,並能不斷的完善腳本,建立一個結構化的自動測試腳本體系。這篇文章重點討論的是,如何管理QTP的對象倉庫,以便能讓對象倉庫易於維護、管理。

  若是隻是簡單的錄製、回放腳本,可能感受不到對象倉庫的存在。可是要作到QTP腳本的結構化管理,就必須對QTP的對象倉庫進行嚴格的管理。

  在實際工做中咱們發現,QTP腳本作好後毫不是一成不變的,而是隨着需求和頁面的變化,須要不斷修改的。若是每次修改腳本的時候,都從新錄製腳本,成本極高,因此最有效的方法是,先修改對象倉庫,而後修改腳本,以適應新的系統。

  若是對象倉庫裏的管理比較混亂的話,修改腳本時就會遭受地獄般的痛苦,好比n多對象全堆在一塊兒根本理不出頭緒,對象的命名不知所云,找不到本身須要的對象等等。下面咱們講一下如何管理對象倉庫,避免這些問題。

  先介紹一下對象倉庫中的對象層次,主要分爲3個層次
一、Browser瀏覽器
二、Page頁面
三、頁面中的各類對象,好比Link、Button

  Browser對應的是已經打開的IE窗口對象,Page對應的是不一樣的網頁,好比登陸首頁是一個Page,登陸成功後跳轉到個人淘寶頁面,這就是另外一個Page。而頁面中的各類對象就比較好理解了,圖片、按鈕、連接都是對象。

  瞭解了對象層次,咱們再講一下命名。若是QTP在錄製過程當中自動記錄對象,命名是很是亂的,缺少邏輯性,常常看到一個Browser下面有n多「淘寶網_1」、「淘寶網_2」這樣的Page,這對咱們之後的管理很是不利。與其修改這些命名,咱們不如用一種思路更清晰的方式,手動添加對象。

  QTP中有一個工具實現了對象倉庫的管理,Object Repository Manager,咱們用它來添加對象。操做很簡單,直接點擊toolbar中的Add Object按鈕,而後在web上點擊你須要添加的對象便可,添加事後再修更名稱。更新對象也比較簡單,先選中須要更新的對象,而後點擊Update from Application便可。

  這項工做其實能夠在系統頁面出來之後就開始作,咱們一邊進行手工測試,一邊把對象添加起來,爲後面的腳本開發作準備。這時暫時不製做腳本。

  總結一下,對象倉庫的管理要知足如下幾個原則:
一、每一個Browser下的Page不要太多,最好不要超過5個,即便咱們的系統都在同一個IE窗口下(沒有彈出新IE),咱們也能夠分幾個Browser管理,把業務上關聯較強的幾個Page放在一個Browser下;
二、每一個對象都按照所表明的業務屬性命名,最好用中文,不要出現一些難理解的字符,好比abc這樣的。
三、儘可能避免在一個tsr文件中堆放過多的對象,最好根據業務,把對象分爲幾個tsr文件保存。這裏沒有統一標準,以每一個tsr文件結構清晰爲宜。

  如今咱們完成了對象倉庫的整理,好,能夠開始製做腳本了。但是問題來了,錄製腳本的時候,QTP能不能自動和這些對象對應上呢?QTP會不會又自動添加一堆對象進來呢?別擔憂,不會出現這個問題,由於咱們將進行一場腳本編寫的革命:放棄「錄製腳本」這種傳統的腳本編寫方法,徹底手工編寫腳本。web

相關文章
相關標籤/搜索