但是很多情況下我們想要的驗證點可能并不是眼睛可以看到的控件。就像下面圖中顯示的,測試者看到的是瀏覽器中各個元素的結果值,這些結果值 Robot 也可以看到,但測試者卻看不到網頁上對象的屬性,比如網頁的 Cookie 屬性,但是這些對象屬性都可以被 Robot 看見。
Robot 的測試驗證點
自動化測試" src="http://www.kjueaiud.com/attachments/2010/07/54376_201007160850123q4ys.gif" width="550">
一旦驗證點被捕獲了,信息就會被存儲在測試數據區域。在執行回放時,測試捕獲的數據將與測試數據區域中的數據基線進行比較。如果比較結果有任何的不同,他們將獲被標記為"失敗"并被記錄在測試日志中。
Robot 還具有對整個網站的斷裂鏈接進行檢查的能力,這也是通過設置驗證點實現的。
Robot 對增強、改進測試腳本的支持
一旦腳步錄制完成,在某些情況下,你可以直接執行它。對于一個簡單的腳本,可能不需要進行任何的改進工作。然而,多數的測試腳本將從通過改進與增強中受益。改進和增強測試腳本的工作非常簡單,就像在程序代碼中添加幾行代碼以處理一些條件邏輯一樣簡單,這對于有一點開發語言基礎的人來說也是很容易的工作。舉一個簡單的例子,你需要測試在給定的環境中計算機屏幕上是否彈出了一個窗口。在這個例子中,你只需要在測試腳本的代碼中添加簡單的類型聲明以處理窗口是否出現。
靈活的編程語言
Robot 使用 SQA Basic 語言對測試腳本進行編輯。SQA Basic 遵循Visual Basic 的語法規則并且為我們提供了非常適合與測試環境的方便的閱讀語言代碼的方式。通過使用這種語言,即便是很少編程經驗的測試人員也能夠很容易的理解代碼的含義。對于哪些有豐富編程經驗的人來說,他們將會發現,SQA 可以非常靈活的進行一些高級的編程,比如利用 COM 對象或者訪問Windows 的編程接口。
SQA Basic 語言是從 Visual Basic 語言中演化而來的,同時它對語法進行了擴展,添加了一些測試專用的命令。這些新的命令擴展了 Robot 對所有 GUI 對象的編程訪問能力,同時也使通常的編程任務―象創建一個數據驅動的測試―更加的簡單。
Robot 靈活的滿足了客戶需要的擴展性
對于測試人員來說,無法實現自動化測試的一個共同原因是,他們無法測試自定義的控件。自定義的控件通常是被開發人員編寫的,或者是從特定的控件供應商買來的以填補開發的缺口,而這些控件的并不一定會保證是在標準的控件環境下被創建的。這些控件使開發人員的工作更加簡單的同時,卻給測試人員的工作帶來了極大的麻煩。
通常的情況下, Robot的通用錄制機制將可以支持多數的自定義的控件。但是也存在著 Robot 本身無法訪問到被給的屬性或者控件的數據的情況。在這種情況下,也不要感到無助, Robot 具有非常好的擴展接口,這個擴展接口使 IBM Rational 的合作伙伴可以擴展 Robot 的功能,以支持幾乎任何的控件。這就可以使測試人員從問題控件中解脫出來,將精力放到測試任務之中。
Robot 對執行測試腳本的支持
一旦完成了了錄制和改進測試腳本,就應該開始執行腳本完成測試了。
在執行或者回放時, Robot承擔了這個任務。Robot 重復所有的用戶交互,計算當前的應用程序結果與驗證基線的任何差異,并將結果記錄在測試日志中。在所有的測試腳本被執行完后,QA 小組檢查測試日志評估他們應用程序的健康性。
成功的腳本執行的關鍵在于擁有多執行點的能力。有時你可能希望只是執行單個的或者少量的腳本,其他的時候你希望執行所有的測試用例。這兩種情況是需要不同的考慮的。
Robot 對執行測試腳本的靈活性
Robot 給你提供了你所需要的執行腳本的靈活性。你可以以以下的方式執行測試腳本:
從Robot 圖形界面中執行腳本
從Robot 命令行中執行腳本
從TestManager 中執行腳本(具有遠程執行腳本的能力)
Robot 執行測試的方式
單一的腳本或者少量的腳本能過從 Robot 圖形界面中或者從命令行被執行。更加復雜的大量的測試腳本能夠在 IBM Rational TestManager 工具中被創建和執行。
當從 TestManager 中執行測試時,你可以獲得在遠程的機器上執行測試的增強能力。通過在遠程的機器上安裝"測試代理",TestManager 可以與遠程的機器進行通訊并計劃在遠程機器上進行測試腳本的執行 - 這個遠程機器可能是在隔壁房間或者根本是在其他的地方!
Robot 與 Rational TestManger 緊密的集成實現自動化測試的有效管理
Robot 通過與 Rational TestMananger 的集成可以實現:
TestManager可以協調測試執行的時間安排和測試腳本的依賴關系
以中心控制的方式計劃在多臺遠程的機器上執行測試
TestManager 可以對測試進行配置 (如被制定到 Windows XP 平臺上的測試只能在 Windows XP 平臺上執行)
從 Rational TestManager 執行測試
從 TestManager 執行測試提供了創建復雜的測試執行組合。TestManager 可以協調測試執行的時間安排和測試腳本的依賴關系。當你的回歸測試不斷增長時,這種能力時絕對必要的。
當從 TestManager 執行測試腳本時,你將獲得管理測試配置的增強能力。TestManager 是"可配置的" ,這就意味著當它計劃在遠程機器上執行一個測試腳本時 -它對遠程機器是可配置的(操作系統、處理器和其他任何條件) -并針對配置來執行測試腳本。因為一個測試腳本需要對不同的操作系統有一些稍微不同的版本,比如 Windows 98 和 Windows XP。TestManager 將僅僅對被給定的測試代理配置發送正確的測試腳本。
Robot 功能特點的總結
最后我們來對 Robot 成功實現自動化測試的功能特性作一個總結。
Robot 具有廣泛的環境支持。Robot 給你很好的靈活性來測試在幾乎所有環境中被創建的應用程序。
Robot 提供了靈活的和可擴展的腳本語言 - SQA Basic 。 SQA Basic 是足夠簡單易懂的,沒有編程經驗的測試人員也可以很容易的理解,SQA Basic 同時也是足夠強大的,可以滿足專業的測試工程師進行復雜的編程需求。Robot 的通用錄制引擎具有良好的擴展性,使你可以建立對任何控件的支持。當你排除了對控件的困擾時,你便可以將精力放到測試工作上。
Robot 提供了非常靈活的執行測試腳本的方式,你可以通過 Robot 圖形界面和命令行執行測試腳本,也可以從 Rational TestManager 按照不同的配置計劃在遠程機器上的復雜的測試腳本的執行。
文章來源于領測軟件測試網 http://www.kjueaiud.com/