QTP選用9.2版本;
一.QTP介紹
是Mercury QuickTest Professional的簡稱,HP自動化測試工具;
是一種針對功能測試和回歸測試自動化提供的測試軟件,通過加載不同插件來支持主要的軟件應用程序和環境,默認只支持標準windows控件,VB,和ActiveX;
是關鍵字驅動測試方法。(不絕對,主要看如何使用工具)
二.RFT介紹
是Rational Functional Tester的簡稱,IBM自動化測試工具;
是一個面向對象的自動測試工具,默認支持大多數的應用程序,而其他的非默認支持的應用程序可以通過加載不同的支持Jar包或自定義對象識別進行操作;
是數據驅動的測試方法。(不絕對,主要看如何使用工具)
比較項 |
QTP |
RFT |
說明 |
學習難度 |
工具的圖形化操作功能比較簡單; 腳本編寫比較簡單; 可以通過簡單的描述性編程實現手動識別對象。 |
工具的圖形化操作功能比較簡單; 腳本編寫比較難; 通過find方法實現手動識別對象,使用難席比較大點。 |
RFT比QTP難說一些。 |
幫助文檔 |
幫助文檔挺系統,還對各類控件進行歸類,方便查找;也提供了內置對象和內置函數的查找文檔;還提供了對外接口說明文檔;整個幫助有不少例子。 |
幫助文檔和教程很少,很不系統。 而提供的API接口只有說明文檔,未提供如何使用該文檔;提供的例子很少。 |
QTP比RFT更全、更人性化。 |
環境要求 |
環境要求較低,有512M內容就能比較順暢的使用了。 |
環境要求比較高,至少得1G內存才能比較順暢使用,512M內存時比較卡,速度慢。 |
RFT要求比較高。 |
腳本語言 |
VBS |
Java、VB.NET |
|
支持應用程序 |
默認支持windows控件,VB,和ActiveX; 可以加插件來支持其他常用的應用程序。不過插件都是要單買的,價格很高。 |
默認支持大部分常用的應用程序。 其他應用程序可以通過加載相應的識別Jar包進行識別,可惜,這些Jar包沒有現成的。 |
都差不多,就看錢的問題了。 |
錄制腳本 |
支持圖形化的操作錄制腳本; 支持圖形化的操作添加驗證點; 支持圖形化的操作應用正則表達式。 |
支持圖形化的操作錄制腳本; 支持圖形化的操作添加驗證點; 支持圖形化的操作應用正則表達式。 (有一個比較怪的做法,默認情況下,在一個文本框中輸入值,是先獲取此文本框的對象,然后點擊文本框范圍內的點,然后通過鍵盤輸入方式輸入值;下拉框對象也是點擊下拉框的值。但是RFT可以手工修改腳本,改成直接賦值的方法) |
RFT功能更強一些,不過QTP更易用一些。 |
參數化 |
支持圖形化的數據表格式數據操作; 使用的是Excel文件來作為測試數據存儲介質; 可以直接打開Excel數據文件修改數據; |
支持指參數化數據; 支持圖形化的數據表格式數據操作; 使用的是Xml格式文件來存儲測試數據; Xml測試數據只支持在RFT軟件中使用格式化方式顯示和修改; Xml測試數據使用標準的數據格式,通用性更好。 |
QTP更容易用一些,RFT更標準化一些。 |
測試數據加載 |
測試數據加載簡單,使用內置函數能方便實現。 |
可以用封裝的方法來動態加載數據,不過比較復雜,而且還得修改腳本中參數化的地方。 |
QTP簡單些 |
對象識別能力 |
有內置識別的比較標準的控件識別強; 組合的控件識別較弱; 默認支持dom,可以直接操作。 |
有內置識別的比較標準的控件識別強; 自定義的控件識別較弱; 可以自定義非標準控件的識別; 當然,通過Jar包的加載,理論上可以操作任何想操作的對象。 |
差不太多,RFT的定制能力更強,但難度也比較大。 |
手動添加對象 |
提供樹形的對象選取方式,可以選擇當前節點,也可以選擇父節點或子節點,使用挺方便。 |
提供節點直接選擇和對象遍歷選擇, 不大實用。 首先,節點直接選擇不能選擇父節點或子節點,很多情況是直接選擇不到要選的節點的; 其次,遍歷節點更是不可能,因為頁面經常一遍歷就有好幾百個對象,很是不好找。 |
QTP更好一些,也更人性化。 |
控件在頁面中情況 |
提供了Active Screen,即頁面的緩存,方便在編寫腳本時查看頁面情況。 |
未提供相應功能。 |
QTP更人性化一些。 |
腳本編輯 |
提供步驟編輯界面,方便不會不會編程的人員使用; 腳本編輯器的功能比較弱。 |
只有腳本編輯器,沒有步驟編輯器; 腳本編輯器的功能比較強,跟操作Eclipse差不太多。 |
RFT強些。 |
腳本調試 |
HP為QTP加入了VBS調試功能; 調試功能比較弱。 |
直接使用Eclipse調試Java的強大功能。 |
RFT強些。 |
回放速度 |
速度比較快。 |
速度較慢。 |
QTP快些。 |
結果報告 |
樹形顯示各個步驟的執行情況。 可以在代碼中向報告寫內容。 |
提供多種形式的結果顯示。 可以在代碼中向報告寫內容。 |
差不太多。 |
擴展性 |
除了加插件,擴展的東西不多。 |
有Jar包,幾乎就可以擴展。 |
RFT強些。 |
結合性 |
提供了與其他程序結合的接口,對C#、VB和VBS結合性比較好。 可以通過C#、VB和VBS等編寫程序方便的調用和操作QTP。 |
這個不太清楚,暫未用到,后期補充。 |
暫不清楚。 |
文章來源于領測軟件測試網 http://www.kjueaiud.com/