Selenium 對開發人員來說是一個強大的工具包

更新:
阅读时长 4 分钟
Selenium 對開發人員來說是一個強大的工具包
圖片: selenium.dev
分享

開發人員花費了無數時間來測試本地和非本地 Web 應用程序的功能。

在 Selenium 之前,這一切都是手工完成的:數十人在所有現有瀏覽器中測試了數百個腳本,發現問題並試圖確定其發生的原因。

什麼是硒

Selenium 是一套開源軟件自動化和測試工具,已經成為事實上的領導者。

Selenium 可與所有主要操作系統和瀏覽器支持的大多數編程語言配合使用,目前已被 Netflix、Google、HubSpot、Fitbit 等公司使用。整個套件為各種測試任務和需求提供了一系列解決方案。

Selenium Suit 基礎設施

網絡驅動程序

在大多數情況下,當人們談論 Selenium 時,他們指的是 Selenium WebDriver。大部分產品開發都集中在這個元素上。
WebDriver 中的測試自動化通常被比作駕駛出租車。出租車駕駛和測試涉及三個組件:客戶(測試工程師)-汽車(瀏覽器)-出租車司機(WebDriver)。

DevOps – 開發與運營
DevOps – 開發與運營
阅读时长 4 分钟

根據這個類比,程序員首先告訴驅動程序如何與瀏覽器的元素進行交互。然後 WebDriver 向瀏覽器(機器)發出類似這樣的命令:當按鈕處於活動狀態時,單擊按鈕。之後,瀏覽器向驅動程序提供有關 web 元素的值和狀態的信息,這些信息稍後會發送到腳本。簡單地說,Selenium WebDriver 工具用於收集信息並確保應用程序正常工作,即驅動程序知道如何駕駛並知道要去哪裡。

硒 IDE

這是 Firefox 的擴展。它不是為開發而設計的,它易於學習,並且非常適合原型設計任務。

在 Selenium IDE 中工作不需要編程技能,因為該插件基本上會記錄工程師在瀏覽器中的操作並重複它們。程序員並不認為它是一個獨立的、成熟的產品,但使用簡單的腳本就足夠了。

硒網格

允許您同時在多台機器和瀏覽器上運行並行測試。該工具的主要功能是節省時間。如果您需要運行 100 次測試來設置四台虛擬機或物理機,則使用 Selenium Grid。

Selenium
圖片: linuxhint.com

鑑於瀏覽器腳本通常很慢,使用並行測試等性能技術可以幫助解決這個問題。它還可以用於在不同瀏覽器中並行測試相同的應用程序,當 Firefox 在一台計算機上運行時,Chrome 在另一台計算機上運行,等等。可以通過組合不同版本的瀏覽器和操作系統來創建不同的配置。不用說,在大型生產環境中使用時,Grid 可以節省四倍的時間。

優點

Selenium 不是市場上唯一的測試自動化工具,但它是唯一可以與付費產品競爭的免費工具。 Katalon Studio 是一個可行的替代方案,但它沒有提供那麼多語言,不能在 Linux 上運行,而且沒有粉絲群。

領域驅動設計 – DDD 編程
領域驅動設計 – DDD 編程
阅读时长 5 分钟

毫不奇怪,即使是更大的公司也不急於轉向付費網站並為 Selenium 免費提供的數千美元服務。與 Selenium 合作的公司數量超過 55,000 家。它在測試和自動化方面的市場份額接近 30%。

支持語言、平台、瀏覽器:

  • Java
  • C#
  • PHP
  • 紅寶石
  • Perl
  • Python
  • JavaScript
  • Objective-C
  • 哈斯克爾
  • R
  • 窗戶
  • Linux
  • 蘋果機
  • 安卓
  • iOS
  • 谷歌瀏覽器
  • Internet Explorer
  • 火狐
  • 野生動物園
  • 歌劇
  • 微軟邊緣
  • HtmlUnitDriver

缺點

也許唯一明顯的缺點是 Selenium 只能用於 Web 應用程序。但這更多的是限制,而不是缺點,因為 WinAppDriver 可以集成到 Selenium 中以測試桌面應用程序。

總結一點歷史

2004 年,Jason Huggins 創建了一個 JavaScript 框架,旨在將其創建者從重複的手動測試中解放出來。可以預見,該產品最初稱為 JavaScriptTestRunner,它可以直接在瀏覽器中運行測試,管理頁面交互,並在無需手動輸入的情況下重新運行它們。這個 JavaScript 工具在 Huggins 意識到其全部潛力後變得流行起來,將其開源並重命名為 Selenium Remote Control。創新之處在於,在此之前,沒有其他工具允許測試人員以他們選擇的編程語言與瀏覽器進行通信。

互聯網是人類最偉大的發明
互聯網是人類最偉大的發明
阅读时长 9 分钟

然而,很快就發現瀏覽器正在對 JavaScript 應用安全限制,從而無法使用該工具的全部功能。當時,谷歌是 Selenium 的狂熱用戶,其工程師盡最大努力繞過這些限制。其中一位西蒙斯圖爾特開始開發一種可以直接與瀏覽器交互的產品,並將其命名為 WebDriver。

因此,十多年前,Selenium 與 WebDriver 聯手,永遠改變了軟件測試的方式。官方網站https://www.selenium.dev
文章評分
0.0
0 个评分
評價這篇文章
Editorial team
請寫下您對這個主題的看法:
avatar
  訂閱  
通知
內容 評分 評論
分享