[跟著官方文檔學Selenium][學習筆記][一][Selenium介紹]

      網(wǎng)友投稿 813 2022-05-29

      [跟著官方文檔學Selenium][學習筆記][一][Selenium介紹]

      前言

      Selenium是支持Web瀏覽器自動化的一系列工具和庫的綜合項目,是當今軟件測試中必須掌握的技能之一。

      Selenium的歷史

      The story starts in 2004

      在2004年芝加哥的ThoughtWorks公司,Jason Huggins構建了一個核心模式名為"JavaScriptTestRunner",用來測試internal Time和Expense application(Python, Plone)。考慮到該咨詢公司的敏捷傾向,任何應用程序的自動測試都是ThoughtWork風格的核心。他從Paul Gross和Jie Tina Wang得到了幫助,對他們來說,這是一份日常工作。

      Jason開始向不同的同事演示測試工具。許多人對其即時直觀的視覺反饋以及作為其他web應用程序的可重用測試框架的發(fā)展?jié)摿Ω械脚d奮。

      2004年,Paul Hammant看到這個演示后開始討論Selenium的開源,以及定義一種"驅(qū)動"模式,在這種模式下,你可以通過自己選擇的語言使用Selenium,這將繞過同源政策。其他(當時)同事Aslak Hellesoy和Mike Melia對"服務器"部分嘗試了不同想法,包括重寫頁面及繞過同源策略。Paul用Java寫了原始服務器,Aslak和Obie Fernandez將客戶端驅(qū)動程序移植到Ruby,為更多語言的驅(qū)動程序提供了基礎。

      ThoughtWorker在世界各地不同辦公室的人為商業(yè)項目學習Selenium,并從這些項目中吸取經(jīng)驗教訓中為Selenium做出了貢獻。Mike Williams,Darrell Deboer和Darren Cotterill都幫助提高了Selenium的能力和健壯性。

      Meanwhile, outside of ThoughtWorks

      在Bea,Dan Fabulich和Nelson Sproul得出的結(jié)論是,驅(qū)動程序/服務器到瀏覽器的體系結(jié)構不是最有用或最靈活的,因此將驅(qū)動程序編碼器分叉,并將其制作成一個獨立的服務器,利用并捆綁MortBay的Jetty作為web代理。當代碼被合并回來時,它被稱為“Selenium Remote Control”,舊的驅(qū)動代碼線和功能被廢棄。

      Pat Lightbody同時參與了一項商業(yè)計劃,這要求他辭去日常的工作(Jive)。這個想法就是"Hosted QA",最終被轉(zhuǎn)移到Gomez的服務線線。Pat和Dan與Nelson合作,使SeleniumRC能夠在大規(guī)模部署中保持穩(wěn)定。Pat曾私底下為Hosted QA編寫了一個grid,拍攝了各州瀏覽器的截圖,并同時照顧多個用戶。Jason一年前也有同樣想法,但他沒有辭去日常工作去做。

      在2007年,Dan搬到了快速發(fā)展的Redfin,并成為Selenium的贊助商。

      Selenium IDE: Made in Japan

      在日本的Shinya Kasatani對Selenium產(chǎn)生了興趣,并意識到他可以將核心代碼封裝到Firefox的IDE模塊中,并能夠在同一個插件中記錄測試和回放測試。這工具在多方面都令人大開眼界,因為它不受同源政策的約束。

      2006年的夏天,Mikes Williams再次參與到項目中,他領導了一個ThoughWorks的中國團隊,主要是Wang Peng Chao,Huang Liang和Xiong Jie,但也得到了其他人的幫助。他們致力于改進Selenium Core,目標是使其更接近1.0版本。

      Google Too!

      Jason Huggins在2007年離開了ThoughtWorks并加入了(當時是秘密的)谷歌的Selenium支持團隊。

      Jennifer Bevan(和其他未具名的谷歌用戶)為Selenium RC編寫了自己的Grid功能,并在內(nèi)部部署該功能,用于測試多個公共web應用程序。谷歌在紐約主辦了一個GTAC會議,并首次討論了他們對Selenium的使用。詹妮弗很快成為Selenium項目的提交人。

      芝加哥的Haw-bin Chai為XPath功能提供了補丁,并開發(fā)了一個名為"UI元素"的拓展,使Locators的語法更加簡單。2007年,他受邀加入Selenium開發(fā)團隊。

      ThoughtWorks的Simon Stewart一直在開發(fā)另一種名為WebDriver的網(wǎng)絡測試工具。它不需要依賴JavaScript來完成繁重的工作,而是為每個瀏覽器提供了一個從頭開始編寫的客戶端。它還有一個比"Selenium-RC"更改級別的API并展示了很多前景。Simon在GTAC上展示了該工具,并開始研究與Selenium RC的兼容性,這得出一個明顯的結(jié)論-這兩個項目即將合并。Simon從2007年到2012年在谷歌工作,現(xiàn)在在Facebook工作。

      Selenium的生態(tài)

      Selenium支持的瀏覽器驅(qū)動

      Mozilla GeckoDriver

      Microsoft EdgeDriver

      Google ChromeDriver

      Opera ChromiumDriver

      Apple SafariDriver\

      語言綁定

      框架

      編程語言通過Selenium驅(qū)動程序支持。這些庫是用各種語言編寫的,命令是來自于Selenium的原生API的方法/函數(shù)。

      Selenium經(jīng)常被用于自動化測試Web應用,但它并不包括測試框架。下面列出了一些可以使用Selenium測試的測試框架。

      Selenium三大件

      Selenium WebDriver

      如果你想創(chuàng)建強大的,基于瀏覽器的回歸自動化套件和測試,在許多不同環(huán)境中拓展和分發(fā)腳本,那么你就需要Selenium WebDriver。

      Selenium IDE

      如果要創(chuàng)建快速錯誤再現(xiàn)腳本,請創(chuàng)建腳本以幫助進行自動化輔助的探索性測試,那么您需要使用Selenium IDE

      Selenium Grid

      如果您想通過在多臺計算機上分發(fā)和運行測試來擴展,并從一個中心點管理多個環(huán)境,從而可以輕松地針對各種瀏覽器/ OS組合運行測試,那么您需要使用Selenium Grid。

      Selenium web前端

      版權聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權內(nèi)容。

      上一篇:華為平臺如何通過國標級聯(lián)方式注冊到EasyCVR視頻融合平臺?
      下一篇:[跟著官方文檔學pytest][六][fixture][學習筆記]
      相關文章
      亚洲依依成人亚洲社区| 91亚洲精品第一综合不卡播放| 亚洲成aⅴ人在线观看| 久久久无码精品亚洲日韩软件| 国产天堂亚洲国产碰碰| 亚洲区日韩精品中文字幕| 亚洲中文字幕AV每天更新| 亚洲乱人伦精品图片| 亚洲成a人片在线网站| 亚洲精品乱码久久久久久下载| 亚洲精品国产手机| 亚洲精品自拍视频| 亚洲欧洲高清有无| 亚洲五月丁香综合视频| 中文字幕在线观看亚洲视频| 最新亚洲精品国偷自产在线| 亚洲一区二区观看播放| 亚洲欧美第一成人网站7777| 亚洲人成网站色在线观看| 亚洲Av高清一区二区三区| 狠狠色伊人亚洲综合网站色| 亚洲午夜理论片在线观看| 精品国产亚洲AV麻豆| 亚洲第一区精品观看| 亚洲一区精品伊人久久伊人| 国产亚洲老熟女视频| 国产亚洲人成无码网在线观看| 亚洲成a人片在线观看中文动漫 | 亚洲国产成人片在线观看无码 | 亚洲AV第一成肉网| 国产成人亚洲精品91专区高清| 亚洲Av无码乱码在线播放| 国产亚洲精品精品国产亚洲综合| 国产亚洲精品成人AA片新蒲金| 亚洲人成网站在线观看播放| 亚洲av福利无码无一区二区| 亚洲综合在线视频| 亚洲欧洲日产国码在线观看| 亚洲精品456人成在线| 欧美日韩亚洲精品| 国产亚洲精品无码拍拍拍色欲|