軟件測試工具Robot中使用腳本調用
使用Rational Robot 錄制操作生成腳本是很容易的事情,但如何管理腳本,減少腳本對程序和對其他腳本的依賴卻是很值得探討的,這需要自動化測試人員對腳本整體結構有一個很好的計劃,同時還需要對被測軟件的功能模塊,業務重點劃分明細。
下面舉一個簡單的例子,用Robot打開一個記事本并輸入內容保存,其中“打開”與“輸入、保存”的操作是通過腳本調用實現,Robot對窗體Caption的定位提到頭文件中作統一處理,同時對輸入、保存的內容數據使用Datapool,現來看一下腳本,之后我會對其中一些語句做簡單解釋:
主腳本 main:
'$include "sqautil.sbh" '調用Datapool時必須事先聲明一下這個頭文件
declare sub notepadinput basiclib "notepadinput"(m as string,n as string)
'聲明這個主腳本里要call的sub(或function)名稱和所在腳本的名稱,及參數
Sub Main 'Initially Recorded: 2006-11-10 8:51:51 |
===========================================================================
子腳本 notepadinput::
'$include "notepadheader.sbh"
'調用頭文件,頭文件中統一處理窗體Caption定位問題
Sub notepadinput(m as string,n as string) |
==================================================================================
頭文件 notepadheader.sbh:
const winname as string = "Caption={* - 記事本}"
'一般頭文件中定義常量并賦值,這里Caption使用通配符,可以定位所有窗體
==================================================================================
Datapool
在TestManager中新建一個Datapool,名字為notepaddp,新建兩列五行(數值屬性為string),自己編輯數值即可
==================================================================================
其實Robot中腳本調用和Datapool還是很簡單的,因為他的語句都很固定,只要設置正確運行不會有問題。
腳本和輸入數值的分離度越高,對于腳本的維護越方便,因為當被測程序變動或你打算輸入不同測試數值時只需修改一個地方即可。上面的這個程序是很簡單的一個例子,但相信其中用到的方法對新學Robot的人還是比較有幫助的。如果有問題,歡迎大家多多討論:)
原文轉自:http://www.anti-gravitydesign.com