| -- | Selenium | QTP/UFT |
|---|---|---|
| 是否付費 | 開源免費 | 商用付費,成本涉及許可證。 |
| IDE | 沒有IDE | 有IDE |
| 操作系統(tǒng) | 各種操作系統(tǒng) | 只支持Windows。 |
| 應用類型 | Web,不支持處理Windows控件 | Web、Java、.Net、ActiveX、VB、Oracle、PowerBuilder...支持操作Windows控件等 |
| 支持錄制 | 僅支持Firefox 55.0版本之前的錄制,回放成功率低,腳本開發(fā)較QTP難度大。 | 支持錄制,上手容易,能夠快速實現(xiàn)自動化,錄制回放成功率高。 |
| 測試類型 | UI自動化、接口自動化 | UI自動化 |
| 開發(fā)語言 | Java、Python、Ruby、Perl、C#、PHP、HTML... | VBScript |
| 瀏覽器 | Internet Explorer、Firefox、Chrome、Edge、Safari、Opera...移動設備驅動等 | Firefox,Internet Explorer和Chrome的特定版本。 |
| 瀏覽器功能 | 不能在瀏覽器中訪問控制。只支持部分IE對話框??? | 可以在瀏覽器中訪問控制,如收藏夾欄,后退和前進按鈕。支持各種IE對話框。 |
| 腳本運行 | 腳本作用于HTML的DOM(文檔對象模型),重點是腳本執(zhí)行的進度。 | 腳本作用于瀏覽器(模擬用戶操作),執(zhí)行中需要焦點。 |
| 參數(shù)設置 | 必須依賴于編程語言,數(shù)據(jù)驅動要用編程實現(xiàn)。 | 參數(shù)是內置的,數(shù)據(jù)驅動支持靈活。 |
| 多線程 | 可以并聯(lián)使用Selenium網(wǎng)格運行測試。 | 不能并行執(zhí)行測試,但將QTP整合到QC允許測試并行執(zhí)行。 |
| 分布式 | 支持分布式運行腳本 | 僅支持遠程平臺運行腳本 |
| 第三方擴展 | 靈活輕巧,支持第三方擴展,公開DOM各種技術。 | 功能成熟且強大,但有限的附加組件和需要附加組件的技術。 |
| 恢復方案 | 任何功能部件,例如對象存儲庫/恢復方案 | QTP已經(jīng)內置恢復方案。 |
| 測試報告 | 沒有默認生成測試報告。 | 默認的測試結果生成工具中。 |
| 移動測試 | 支持移動設備。 | 支持第三方工具的移動設備。 |
| 學習難易程度 | 資料較少,官方論壇 | 資料較多 |
兩者都沒有完全的跨瀏覽器支持,代碼在不同瀏覽器上是需要修改的。
UI對象的管理和存儲:QTP的內置了良好的支持。Selenium可以通過用戶擴展UI-Element來管理???,不過要在代碼中寫死,不像QTP一樣可以自動錄制添加。