用Robot實現有效自動化測試

      Robot 對錄製測試腳本的支持 C.崗K? 
  Robot 可以監測到測試人員與應用程序之間的所有交互行爲,並可以產生相應的測試腳本。 =矒7彲 ? 
  現在你必須理解自動化測試中關於驗證點和檢查的主要區別。當你進行手工測試時,通常你可以通過看屏幕中顯示的結果來判斷應用程序執行是否是正確的,或者你可以將屏幕上的結果與文檔或者其他的一些結果基線進行比較。在 Robot 中這種比較是通過在測試腳本中設置驗證點實現的。在執行腳本時Robot 會在驗證點獲取測試感興趣的數據,然後與已設定好的結果集進行比較判斷測試是否通過。這個比較的過程叫作檢查。 擃騗Qr副? 
  Robot支持的環境 埤}/蜧^寓  
  目前Robot 對幾乎所有流行的應用環境多有良好的支持和工作表現。尤其是對象 HTML、Java 和 .NET 應用、 Visual Basic,、PowerBuilder,、Delphi、 Oracle 表單 和 MFC 控件(控件最常用在 C和 C++ 的應用中)有着非常強大的支持。 並胾衴謒u  
  在Robot 覆蓋了幾乎所有的應用環境的同時,仍然存在一些用很少被使用的語言和環境創建的程序部分,對於這些環境, Robot 具有一種通用的記錄引擎可以捕獲幾乎所有的基本界面交互。因此可以說,使用 Robot 能過滿足幾乎所有的測試環境要求。 嫳 8)m?l  
  測試的驗證點 ??璝ahW? 
  驗證點是一個 Robot 測試腳本中的一個術語,在驗證點上你可以檢查某些系統表單的行爲。 H?.B轢呠謯  
  在Robot中最常用的驗證點是對象屬性和對象的數據驗證。這些驗證點被用於捕獲對象的狀態和對象測試期間的數據。在 Robot 中創建驗證點與選擇想得到的驗證點和識別想要被測試的對象一樣的簡單。 09熂!冄p  
  但是很多情況下我們想要的驗證點可能並不是眼睛可以看到的控件。就像下面圖中顯示的,測試者看到的是瀏覽器中各個元素的結果值,這些結果值 Robot 也可以看到,但測試者卻看不到網頁上對象的屬性,比如網頁的 Cookie 屬性,但是這些對象屬性都可以被 Robot 看見。 牥j5?掌d? 
  Robot 的測試驗證點 !@0 x€?? 
  一旦驗證點被捕獲了,信息就會被存儲在測試數據區域。在執行回放時,測試捕獲的數據將與測試數據區域中的數據基線進行比較。如果比較結果有任何的不同,他們將獲被標記爲"失敗"並被記錄在測試日誌中。 茡H嘲笱磓T  
  Robot 還具有對整個網站的斷裂鏈接進行檢查的能力,這也是通過設置驗證點實現的。 蕢劘簟虧@? 
  Robot 對增強、改進測試腳本的支持。 F$?%関G? 
  一旦腳步錄製完成,在某些情況下,你可以直接執行它。對於一個簡單的腳本,可能不需要進行任何的改進工作。然而,多數的測試腳本將從通過改進與增強中受益。改進和增強測試腳本的工作非常簡單,就像在程序代碼中添加幾行代碼以處理一些條件邏輯一樣簡單,這對於有一點開發語言基礎的人來說也是很容易的工作。舉一個簡單的例子,你需要測試在給定的環境中計算機屏幕上是否彈出了一個窗口。在這個例子中,你只需要在測試腳本的代碼中添加簡單的類型聲明以處理窗口是否出現。 7訳'Y?pX? 
  靈活的編程語言 ?.?C玩  
  Robot 使用 SQA Basic 語言對測試腳本進行編輯。SQA Basic 遵循Visual Basic 的語法規則並且爲我們提供了非常適合與測試環境的方便的閱讀語言代碼的方式。通過使用這種語言,即便是很少編程經驗的測試人員也能夠很容易的理解代碼的含義。對於哪些有豐富編程經驗的人來說,他們將會發現,SQA 可以非常靈活的進行一些高級的編程,比如利用 COM 對象或者訪問Windows 的編程接口。 鰺|顇袖(  
  SQA Basic 語言是從 Visual Basic 語言中演化而來的,同時它對語法進行了擴展,添加了一些測試專用的命令。這些新的命令擴展了 Robot 對所有 GUI 對象的編程訪問能力,同時也使通常的編程任務―象創建一個數據驅動的測試―更加的簡單。 ?x?J€  
  Robot 靈活的滿足了客戶需要的擴展性 孿w.?磦珎  
  對於測試人員來說,無法實現自動化測試的一個共同原因是,他們無法測試自定義的控件。自定義的控件通常是被開發人員編寫的,或者是從特定的控件供應商買來的以填補開發的缺口,而這些控件的並不一定會保證是在標準的控件環境下被創建的。這些控件使開發人員的工作更加簡單的同時,卻給測試人員的工作帶來了極大的麻煩。 ?T亮>轍  
  通常的情況下, Robot的通用錄製機制將可以支持多數的自定義的控件。但是也存在着 Robot 本身無法訪問到被給的屬性或者控件的數據的情況。在這種情況下,也不要感到無助, Robot 具有非常好的擴展接口,這個擴展接口使 IBM Rational 的合作伙伴可以擴展 Robot 的功能,以支持幾乎任何的控件。這就可以使測試人員從問題控件中解脫出來,將精力放到測試任務之中。 胘;銛?鶜  
  Robot 對執行測試腳本的支持 ? -鴄?P  
  一旦完成了了錄製和改進測試腳本,就應該開始執行腳本完成測試了。 熰V塢VQ裀? 
  在執行或者回放時, Robot承擔了這個任務。Robot 重複所有的用戶交互,計算當前的應用程序結果與驗證基線的任何差異,並將結果記錄在測試日誌中。在所有的測試腳本被執行完後,QA 小組檢查測試日誌評估他們應用程序的健康性。 遹朖?鶆  
  成功的腳本執行的關鍵在於擁有多執行點的能力。有時你可能希望只是執行單個的或者少量的腳本,其他的時候你希望執行所有的測試用例。這兩種情況是需要不同的考慮的。 @J:嵀獇  
  Robot 對執行測試腳本的靈活性 賽?K5M? 
  Robot 給你提供了你所需要的執行腳本的靈活性。你可以以以下的方式執行測試腳本:從Robot 圖形界面中執行腳本,從Robot 命令行中執行腳本,從TestManager 中執行腳本(具有遠程執行腳本的能力)。 ?}_gR駝o  
  Robot 執行測試的方式 ?&6C?y登  
  單一的腳本或者少量的腳本能過從 Robot 圖形界面中或者從命令行被執行。更加複雜的大量的測試腳本能夠在 IBM Rational TestManager 工具中被創建和執行。 (4??x#搏  
  當從 TestManager 中執行測試時,你可以獲得在遠程的機器上執行測試的增強能力。通過在遠程的機器上安裝"測試代理",TestManager 可以與遠程的機器進行通訊並計劃在遠程機器上進行測試腳本的執行 - 這個遠程機器可能是在隔壁房間或者根本是在其他的地方! Hn膓Z23嶪  
  Robot 與 Rational TestManger 緊密的集成實現自動化測試的有效管理。Robot 通過與 Rational TestMananger 的集成可以實現: 錵逪=鮉? 
  TestManager可以協調測試執行的時間安排和測試腳本的依賴關係。 飲鋡?∈? 
  以中心控制的方式計劃在多臺遠程的機器上執行測試。TestManager 可以對測試進行配置 (如被制定到 Windows XP 平臺上的測試只能在 Windows XP 平臺上執行) 砰耳h鋟擄P  
  從Rational TestManager 執行測試,從TestManager 執行測試提供了創建複雜的測試執行組合。TestManager 可以協調測試執行的時間安排和測試腳本的依賴關係。當你的迴歸測試不斷增長時,這種能力時絕對必要的。 ?獺-赾竲  
  當從 TestManager 執行測試腳本時,你將獲得管理測試配置的增強能力。TestManager 是"可配置的" ,這就意味着當它計劃在遠程機器上執行一個測試腳本時 -它對遠程機器是可配置的(操作系統、處理器和其他任何條件) - 並針對配置來執行測試腳本。因爲一個測試腳本需要對不同的操作系統有一些稍微不同的版本,比如 Windows 98 和 Windows XP。TestManager 將僅僅對被給定的測試代理配置發送正確的測試腳本。 |rVZi?:? 
  Robot 功能特點的總結 ?<抏篻?  
  最後我們來對 Robot 成功實現自動化測試的功能特性作一個總結。 帚n﹗`H?? 
  Robot 具有廣泛的環境支持。Robot 給你很好的靈活性來測試在幾乎所有環境中被創建的應用程序。 /潎嬣1鎨[  
  Robot 提供了靈活的和可擴展的腳本語言 - SQA Basic 。 SQA Basic 是足夠簡單易懂的,沒有編程經驗的測試人員也可以很容易的理解,SQA Basic 同時也是足夠強大的,可以滿足專業的測試工程師進行復雜的編程需求。Robot 的通用錄製引擎具有良好的擴展性,使你可以建立對任何控件的支持。當你排除了對控件的困擾時,你便可以將精力放到測試工作上。 櫊`x?痿蝪  
  Robot 提供了非常靈活的執行測試腳本的方式,你可以通過 Robot 圖形界面和命令行執行測試腳本,也可以從 Rational TestManager 按照不同的配置計劃在遠程機器上的複雜的測試腳本的執行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章