Selenium RC 和 WebDriver 之間有什麼關係?
Selenium RC 和 Selenium WebDriver 之間存在關係。在引入 Selenium WebDriver 之前,Selenium RC 被廣泛使用。
這兩個工具都支援在多個瀏覽器中執行自動化測試。此外,可以使用多種程式語言來實現測試用例。但是,它們之間也存在以下差異:
| 功能 | Selenium RC | Selenium WebDriver |
|---|---|---|
| 伺服器 | 需要伺服器來觸發測試執行。 | 無需伺服器來觸發測試執行。 |
| 面向物件 | 對面向物件概念的支援不多。 | 大多數測試基於面向物件概念。 |
| 動態定位器 | 無法識別具有動態定位器的元素。 | 能夠識別具有動態定位器的元素。 |
| 警報 | 不支援警報。 | 支援警報。 |
| 滑鼠操作 | 不支援滑鼠操作。 | 支援滑鼠操作。 |
| 下拉選單 | 不支援處理下拉選單。 | 支援處理下拉選單。 |
| iPhone/Android | 不支援 iPhone/Android 測試。 | 支援 iPhone/Android 測試 |
| 監聽器 | 不支援監聽器。 | 支援監聽器。 |
| 效能 | 它不直接與瀏覽器通訊,因此執行速度較慢。 | 執行速度快,因為它直接與瀏覽器通訊。 |
| 架構 | 基於 JavaScript。 | 不基於 JavaScript。 |
| XPath | 提供絕對 XPath。 | 提供絕對和相對 XPath。 |
| 導航 | 不支援導航。 | 支援導航。 |
| 無頭執行 | 不支援無頭執行。 | 支援無頭執行。 |
| Selenium Core | 伺服器將 Selenium Core(一個 JavaScript 程式)注入瀏覽器。Selenium Core 從 RC 伺服器接收命令。Selenium Core 使用 JavaScript 執行命令。然後,JavaScript 命令向瀏覽器提供指令。最後,瀏覽器執行 Selenium Core 提供的指令,並將完整的執行狀態傳送到伺服器。最終的執行結果由使用者接收。 | 沒有 Selenium Core。直接與瀏覽器通訊。瀏覽器執行測試生成的指令。 |
| 報告生成 | 能夠生成 HTML 測試報告。 | 無法使用其內建功能生成 HTML 測試報告。 |
| API | API 複雜且冗餘。 | API 使用者友好且簡單。 |
| 社群支援 | 社群支援有限。 | 擁有龐大且廣泛的社群支援。 |
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP