1. 資料驅動測試方法
資料驅動測試方法要解決的核心問題是把資料從測試指令碼中分離出來,從而實現測試指令碼的引數化。資料驅動測試通常按以下步驟進行:
1) 引數化測試步驟的資料,繫結到資料**中的字段。
2) 編輯資料**,在**中編輯多行測試資料。
3) 設定迭代次數,選擇資料行。
在qtp中,可以使用多種方式來對測試指令碼進行引數化,資料表引數化是其中一種重要的方式,此外還有環境變數引數化、隨機數引數化等。
選擇"parameter"選項,單擊"ok"按鈕,在關鍵字檢視中可以看到"value"值已經被引數化,替換成了"datatable("p_item", dtglobalsheet)",如下所示:
選擇選單"view > data table",可以看到在"p_text"列中有乙個預設資料"軟體測試",這是引數化之前錄製的指令碼中的常量,可以在"p_text"列中繼續新增更多的測試資料,如下所示:
在執行測試指令碼之前,還要做一些設定,選擇選單"file > settings",切換到"run"頁面,在"data table iterations"中,可以設定資料**的迭代方式,如下所示:
2. action測試輸入引數化
對於重複使用的測試用例,可以轉換成公共用例,適當引數化後,可被其他測試用例呼叫。在qtp中,可以把action的輸入適當引數化,轉換成可重用的測試步驟。
選擇action所在的行,單擊滑鼠右鍵,選擇選單"action properties",切換到"parameters"頁,單擊"+"按鈕,新增呼叫action需要輸入的引數名和型別,如下所示:
新增完引數後,回到關鍵字檢視,單擊需要引數化步驟的"value"列的單元格旁邊的""按鈕,在"parameter"中,選擇"test/action parameter",然後選擇剛編輯好的引數,單擊"ok"按鈕,如下所示:
完成action的引數化後,就可以在其他action中呼叫這個action,方法是在action的測試步驟中,選擇選單"insert > call to existing action"插入現有的action,單擊"ok"按鈕,即可插入對其他action的引用,如下所示:
選中插入的action所在的行,單擊滑鼠右鍵,選擇選單"action call properties",在"parameter value"頁中,為每乙個引數設定輸入的引數值,也可以單擊"value"列旁的""按鈕,為輸入繫結到data table中的資料,如下所示:
3. 使用環境變數的引數化
在qtp中,除了上述的幾種引數化測試方式外,還可以使用環境變數來進行測試的引數化。在使用環境變數前,需要定義好環境變數,選擇選單"file > settings",切換到"environment"頁,如下所示:
在"variable type"中選擇"user-defined",單擊旁邊的"+"按鈕,定義環境變數名和輸入的值,如下所示:
定義好環境變數並設定好其值後,就可以在測試步驟中使用該環境變數,單擊測試步驟"value"字段旁邊的""按鈕,在"parameter"中選擇"environment",然後選擇對應的環境變數,單擊"ok"按鈕,如下所示:
這樣,qtp在執行測試指令碼時,就會讀取測試步驟所繫結的環境變數值,來執行相應的資料輸入。選擇選單"file > setting",在介面中單擊"export"按鈕,可以把當前定義的環境變數匯出到xml檔案中,如下所示:
對於匯出的xml檔案,可以再次匯入,選中"load variables and values from external file",選擇匯出的xml檔案即可,如下所示:
測試 QTP原理
qtp是基於gui介面的自動化測試工具,用於系統的功能測試。qtp錄製的是滑鼠和鍵盤的訊息。qtp錄製回放時基於windows作業系統的訊息機制。qtp在錄製時監聽應用程式的訊息,監聽到之後把訊息放到容器裡,而另外的監聽程式則從容器中取出容器中的訊息,並呼叫對用的api處理函式。qtp擷取的是使用者...
qtp連線mysql 無驅動 QTP連線MySQL
1 安裝 connector odbc 2 檢視資料來源名稱 控制面板 管理工具 資料來源 odbc 新增 3 連線資料庫 dim conn,connstring 建立資料庫例項 set conn createobject adodb.connection 連線字串 connstring drive...
qtp連線mysql 無驅動 QTP連線MySQL
1 安裝 connector odbc 2 檢視資料來源名稱 控制面板 管理工具 資料來源 odbc 新增 3 連線資料庫 dim conn,connstring 建立資料庫例項 set conn createobject adodb.connection 連線字串 connstring drive...