首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> 關於.NET

.NET 平台 Web 自動化測試工具橫向評比:WatiN、Selenium、LTAF

     編輯:關於.NET

背景

瀏覽器手動驗證是最直觀的 Web 測試方式,但自動化工具能釋放人力。Ruby 平台的 Watir 是標竿,.NET 團隊則有專屬選擇:WatiN、Selenium、LTAF。

工具介紹

WatiN (Web Application Testing in .NET)

  • Watir 的 C# 移植版,支援任意 .NET 語言撰寫測試碼。
  • 1.0 僅支援 IE,2.0+ 透過外掛支援 Firefox。
  • 最新 2.0 CTP3 強化 Firefox 功能並修正 Bug。
  • 附屬專案 WatiN Test Recorder(Alpha 版)可錄製瀏覽器操作自動生成測試碼。
  • 開源,Apache License 2.0。

Selenium

  • 完整測試系統:Selenium IDE(錄製)、Selenium RC(多語言撰寫/執行)、Selenium Grid(分散式並行測試)。
  • 核心 Selenium Core 基於 JsUnit,純 JavaScript 實作,支援所有支援 JS 的瀏覽器。
  • 以特定格式 HTML 檔案驅動測試套件,可讀性佳。
  • RC 支援 C# 等主流語言,跨作業系統/瀏覽器。
  • Grid 將測試分發多機器,大幅加速。
  • 開源,Apache License 2.0。

LTAF (Lightweight Test Automation Framework for ASP.NET)

  • ASP.NET QA 團隊開發,用於產品迴歸測試。
  • 任意 .NET 程式碼撰寫測試,內建 API 操作 DOM。
  • 近期發布 April Update 並釋出原始碼。
  • 獨特優勢:
    1. 直接在瀏覽器運行,天生支援現有及未來所有瀏覽器。
    2. 部署於被測網站同一進程,測試碼與頁面共享記憶體,無需跨進程序列化,資料傳遞極簡單(只是引用)。
  • 已知限制:
    1. 頁面置於 Frame 中,window.top 等屬性改變(可自訂 getTop() 解決)。
    2. 本質用 JS 操作 DOM,阻塞性操作(alert、confirm)會凍結測試(現代 JS 框架已可替代,影響不大)。
  • 非開源但釋出原始碼。

橫向比較表

特性WatiNSeleniumLTAF
瀏覽器支援IE / FirefoxIE / Firefox / Opera / Safari任意(瀏覽器內運行)
自動生成程式碼有(不支援 Firefox)有 (Selenium IDE)無
授權模式Apache 2.0 開源Apache 2.0 開源非開源但釋出碼
特色優勢—Grid 分散式並行加速測試碼與網站同進程,記憶體直傳資料

選型建議

無絕對最佳,視專案需求決定:

  • 需跨瀏覽器、分散式並行 → Selenium
  • .NET 團隊、偏好 C#、重視錄製回放 → WatiN
  • ASP.NET/MVC 專案、需深度整合 View 單元測試、追求極簡資料傳遞 → LTAF
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved