import resources.ThirdwithDatapoolHelper; import com.rational.test.ft.*; import com.rational.test.ft.object.interfaces.*; import com.rational.test.ft.scrīpt.*; import com.rational.test.ft.value.*; import com.rational.test.ft.vp.*; /** * Descrīption : Functional Test scrīpt * @author ndejun */ public class ThirdwithDatapool extends ThirdwithDatapoolHelper { /** * scrīpt Name : <b>ThirdwithDatapool</b> * Generated : <b>2005-4-17 15:22:36</b> * Descrīption : Functional Test scrīpt * Original Host : WinNT Version 5.1 Build 2600 (S) * * @since 2005/04/17 * @author ndejun */ public void testMain(Object[] args) { startApp("ClassicsJavaB"); // Frame: ClassicsCD classicsJava(ANY,MAY_EXIT).close(); } }
基于Java的測試腳本,為高級測試軟員提高了更強大的編程和定制能力,測試員甚至可以通過在Helper類中加入各種客戶化腳本,實現各種高級測試功能。
3.2 使用RFT輕松實現數據驅動的軟件測試
RFT具有基于向導(Wizards)的數據驅動的功能測試能力。在功能測試腳本的錄制過程中,如圖四所示,我們可以方便選擇被測應用圖形界面上的各種被測對象,進行參數化,通過生成新的數據池字段或從數據池中選擇已存在數據字段,實現數據驅動的功能回歸測試。
圖四、數據驅動的功能測試
在生成測試腳本的同時,RFT還能夠幫助測試員在驗證點中使用正則表達式或使用數據驅動的方法建立動態驗證點。動態驗證點用來處理普通驗證點的期望值隨著輸入參數不同而發生變化的情況。在下面的例子中,如圖五所示,訂單總金額會隨著購買商品數量的不同而變化,通過數據驅動的功能測試方法,測試員首先要對購買的商品數量和訂單總金額進行參數化,然后編輯驗證點中的期望值,將其用數據池中的對應訂單總金額代替,這樣驗證點中的總金額就隨著購買商品數量的不同而得出正確的總金額。通過簡單操作、無需任何編程,測試員就可以很方便地實現動態驗證點的功能。
圖五、生成動態驗證點
此外,測試員還可以通過在驗證點中使用正則表達式,建立更加靈活的驗證點,保證測試腳本的重用性。
圖六、正則表達式在驗證點中的應用
3.3 提供多種專利技術,提高腳本的可維護性
使用IBM Rational Functional Test工具進行Java和Web應用系統測試時,標準Java的測試腳本語言,為測試腳本的可重用性和腳本能力提供了第一層保證。此外,通過維護"測試對象圖",IBM為測試員提供了不用任何編程就可以實現測試腳本在不同的被測系統版本間的重用能力。"測試對象圖"分為兩種,一種是公用"測試對象圖",它可以為項目中的所有測試腳本使用;另一種是私有"測試對象圖",它只被某一個管理的測試腳本所使用。在軟件開發的不同版本間,開發員會跟據系統需求的變化,修改被測系統和用于構建被測系統的各種對象,所以測試腳本在不同的版本間進行回歸測試時經常會失敗。因此,通過維護公用"測試對象圖",如圖七所示,測試員可以根據被測應用系統中對象的改變,更新測試對象的屬性值及對應權重,這樣在不修改測試腳本的前提下,就能使原本會失敗的測試腳本回放成功。同時,為了方便測試員對測試對象圖的修改和維護能力,RFT還提供了強大的查詢和查詢定制能力,幫助測試腳本維護人員快速找到變化的測試對象,進行修改和維護工作。
圖七、測試對象圖的維護
文章來源于領測軟件測試網 http://www.kjueaiud.com/