- Selenium 教程
- Selenium——首頁
- Selenium——概述
- Selenium——元件
- Selenium——自動化測試
- Selenium——環境搭建
- Selenium——遠端控制 (Selenium Remote Control)
- Selenium IDE 教程
- Selenium IDE——簡介
- Selenium——特性
- Selenium——侷限性
- Selenium——安裝
- Selenium——建立測試用例
- Selenium——建立指令碼
- Selenium——控制流
- Selenium——儲存變數
- Selenium——警告框和彈出視窗
- Selenium——Selenese 命令
- Selenium——Actions 命令
- Selenium——Accessors 命令
- Selenium——Assertions 命令
- Selenium——Assert/Verify 方法
- Selenium——定位策略
- Selenium——指令碼除錯
- Selenium——驗證點
- Selenium——模式匹配
- Selenium——JSON 資料檔案
- Selenium——瀏覽器執行
- Selenium——使用者擴充套件
- Selenium——程式碼匯出
- Selenium——程式碼生成
- Selenium——JavaScript 函式
- Selenium——外掛
- Selenium WebDriver 教程
- Selenium——簡介
- Selenium WebDriver vs. RC
- Selenium——安裝
- Selenium——第一個測試指令碼
- Selenium——驅動程式會話
- Selenium——瀏覽器選項
- Selenium——Chrome 選項
- Selenium——Edge 選項
- Selenium——Firefox 選項
- Selenium——Safari 選項
- Selenium——雙擊
- Selenium——右擊
- Python 中的 HTML 報告
- 處理編輯框
- Selenium——單個元素
- Selenium——多個元素
- Selenium Web 元素
- Selenium——檔案上傳
- Selenium——定位策略
- Selenium——相對定位器
- Selenium——查詢器
- Selenium——查詢所有連結
- Selenium——使用者互動
- Selenium——WebElement 命令
- Selenium——瀏覽器互動
- Selenium——瀏覽器命令
- Selenium——瀏覽器導航
- Selenium——警告框和彈出視窗
- Selenium——表單處理
- Selenium——視窗和標籤頁
- Selenium——連結處理
- Selenium——輸入框
- Selenium——單選按鈕
- Selenium——複選框
- Selenium——下拉框
- Selenium——處理IFrames
- Selenium——處理Cookie
- Selenium——日期時間選擇器
- Selenium——動態Web表格
- Selenium——Actions 類
- Selenium——Action 類
- Selenium——鍵盤事件
- Selenium——按鍵上/下
- Selenium——複製和貼上
- Selenium——處理特殊按鍵
- Selenium——滑鼠事件
- Selenium——拖放
- Selenium——筆事件
- Selenium——滾動操作
- Selenium——等待策略
- Selenium——顯式/隱式等待
- Selenium——支援特性
- Selenium——多選
- Selenium——等待支援
- Selenium——選擇支援
- Selenium——顏色支援
- Selenium——ThreadGuard
- Selenium——錯誤和日誌記錄
- Selenium——異常處理
- Selenium——其他
- Selenium——處理Ajax呼叫
- Selenium——JSON 資料檔案
- Selenium——CSV資料檔案
- Selenium——Excel資料檔案
- Selenium——跨瀏覽器測試
- Selenium——多瀏覽器測試
- Selenium——多視窗測試
- Selenium——JavaScript執行器
- Selenium——無頭執行
- Selenium——捕獲截圖
- Selenium——捕獲影片
- Selenium——頁面物件模型 (Page Object Model)
- Selenium——頁面工廠 (Page Factory)
- Selenium——錄製和回放
- Selenium——框架
- Selenium——瀏覽器上下文
- Selenium——DevTools
- Selenium Grid 教程
- Selenium——概述
- Selenium——架構
- Selenium——元件
- Selenium——配置
- Selenium——建立測試指令碼
- Selenium——測試執行
- Selenium——端點
- Selenium——自定義節點
- Selenium 測試報告工具
- Selenium——報告工具
- Selenium——TestNG
- Selenium——JUnit
- Selenium——Allure
- Selenium 與其他技術
- Selenium——Java 教程
- Selenium——Python 教程
- Selenium——C# 教程
- Selenium——Javascript 教程
- Selenium——Kotlin 教程
- Selenium——Ruby 教程
- Selenium——Maven 和 Jenkins
- Selenium——資料庫測試
- Selenium——LogExpert 日誌記錄
- Selenium——Log4j 日誌記錄
- Selenium——Robot Framework
- Selenium——AutoIT
- Selenium——Flash 測試
- Selenium——Apache Ant
- Selenium——Github 教程
- Selenium——SoapUI
- Selenium——Cucumber
- Selenium——IntelliJ
- Selenium——XPath
- Selenium 其他概念
- Selenium——IE驅動程式
- Selenium——自動化框架
- Selenium——關鍵字驅動框架
- Selenium——資料驅動框架
- Selenium——混合驅動框架
- Selenium——SSL證書錯誤
- Selenium——替代方案
- Selenium 有用資源
- Selenium——問答
- Selenium——快速指南
- Selenium——有用資源
- Selenium——自動化實踐
- Selenium——討論
Selenium——自動化測試
Selenium 主要用於自動化 Web 應用程式的測試。它是免費的,不需要任何許可費用。與手動測試相比,使用 Selenium 進行自動化測試更受青睞,因為使用 Selenium 進行自動化測試比手動測試具有更好的投資回報率。
不同型別的 Selenium 測試
Selenium 可用於建立不同型別的測試,如下所示:
- 功能測試——這些測試有助於檢查被測應用程式或產品的各種新功能。
- 迴歸測試——這些測試有助於檢查程式碼更改是否破壞了應用程式的現有功能。
- 冒煙測試——這些測試有助於驗證新版本是否足夠穩定,可以對其進行測試。
- 整合測試——這些測試有助於驗證所有模組的整合是否作為一個單元一起工作。
- 單元測試——這些測試由開發人員建立以測試他們的程式碼。
Selenium 自動化測試工具
Selenium 包含一組工具,通常稱為 Selenium 元件。這些工具列在下面:
- Selenium IDE——它作為 Chrome 和 Firefox 瀏覽器的附加元件提供。
- Selenium Remote Control——它是一個用 Java 開發的伺服器,允許使用多種語言(如 Java、Perl、Python 等)編寫自動化測試。
- Selenium WebDriver——它是一個可以與 TestNG、JUnit 等其他框架整合的工具,並且可以與多種程式語言一起使用。
- Selenium Grid——它是一個有助於在各種平臺和瀏覽器上實現並行執行的工具。
Selenium 3.x 和 4.x 之間的區別
Selenium 的最新版本是 4.x 版本。從 Selenium 4 版本開始,整個架構完全相容 W3C(全球資訊網聯盟),這意味著 Selenium 4 遵循 W3C 提供的所有標準和指南。
Selenium 3.x 和 Selenium 4.x 之間的基本區別在於,在 Selenium 3 中,客戶端和伺服器之間的通訊透過 JSON Wire 協議完成,但是從 Selenium 4 開始,遵循 W3C 指南,伺服器和客戶端之間可以直接通訊。
在 Selenium 4 之前,客戶端和伺服器之間的通訊是使用 HTTP 上的 JSON Wire 協議進行的。但是,從 Selenium 4 開始,JSON Wire 協議不再存在,客戶端和伺服器之間使用 W3C 協議直接通訊。
此外,Selenium 4 提供了一些額外的定位器(除了常規的定位器,如 id、class、xpath 等),稱為相對定位器,可以使用 above、below、near、toRightOf、toLeftOf 方法以及多個相對定位器的鏈式呼叫。Selenium 4 還允許訪問 ChromeDevTools,這有助於除錯、網路流量分析以及其他有助於自動化的功能。
Selenium WebDriver 4.0 版本的簡化架構圖如下所示:
為什麼使用 Selenium 進行自動化測試?
- 使用 Selenium 編寫的自動化測試可以用多種程式語言編寫,例如 Java、C#、Python、JavaScript 等。
- Selenium WebDriver 支援 Chrome、Firefox、Safari、IE 等瀏覽器。
- Selenium WebDriver 可以在多個平臺上執行,例如 Windows、Mac、Linux、Android 等。
- 可以使用 HTMLUnit Driver 實現無頭執行。
- Selenium WebDriver 不需要伺服器來啟動測試執行,它直接與瀏覽器通訊。
- Selenium 是開源的,無需任何許可費用。
- Selenium 可以擴充套件到各種公開 DOM 的技術。
- Selenium 擁有龐大的社群支援來解決問題。
使用 Selenium 的缺點
- Selenium 只支援基於 Web 的應用程式。
- Selenium 不應用於自動化 QR 碼、驗證碼和條形碼場景的測試。
- Selenium 沒有內建的物件儲存庫或恢復方案。
- Selenium 沒有預設的測試報告生成。
- Selenium WebDriver 需要程式設計和技術知識才能開發自動化測試。
- Selenium WebDriver 需要時間才能與新的瀏覽器更好地相容和穩定。
- Selenium WebDriver 難以設定,因為沒有供應商支援。
使用不同的語言執行 Selenium 自動化測試
Selenium 可以使用多種程式語言(如 Java、Python、Ruby、JavaScript 等)在多個瀏覽器、平臺和裝置上測試 Web 應用程式。根據我們使用的語言,配置 Selenium 測試所需的先決條件也會發生變化。以下連結將幫助您在不同的語言中設定和執行 Selenium 自動化測試:
- Selenium 與 Java 教程
- Selenium 與 Python 教程
- Selenium 與 C# 教程
- Selenium 與 JavaScript 教程
- Selenium 與 Kotlin 教程
本教程對 Selenium 自動化測試進行了全面的講解。我們首先介紹了 Selenium 是什麼,不同型別的 Selenium 測試,Selenium 自動化測試工具,Selenium 3.x 和 Selenium 4.x 之間的區別,為什麼使用 Selenium 進行自動化測試,Selenium 的缺點以及如何在不同的語言中執行 Selenium 自動化測試。
這使您掌握了 Selenium 自動化測試的深入知識。明智的做法是不斷練習您所學的內容,並探索與 Selenium 相關的其他內容,以加深您的理解並拓寬您的視野。
