6. Selenium測試工具簡介

6. Selenium測試工具簡介
java

Selenium的前世此生web

1. Selenium 1.0c#

Selenium 1.0 = Selenium IDE + Selenium Grid + Selenium RC設計模式

 

 

 

早期的Selenium使用的是Javascript注入技術與瀏覽器打交道,須要Selenium RC啓動一個Server,將操做Web元素的API調用轉化爲一段段Javascript,在Selenium內核啓動瀏覽器以後注入這段Javascript瀏覽器

Javascript能夠獲取並調用頁面的任何元素進行操做,實現了Selenium自動化Web操做的目的。這種Javascript注入技術的缺點是速度不理想,並且穩定性大大依賴於Selenium內核對API翻譯成的Javascript質量高低。ruby

2. Selenium 2.0工具

Selenium 2.0 = Selenium 1.0 + WebDriver學習

Selenium2.x 提出了WebDriver的概念以後,它提供了徹底另外的一種方式與瀏覽器交互。那就是利用瀏覽器原生的API,封裝成一套更加面向對象的Selenium WebDriver API,直接操做瀏覽器頁面裏的元素,甚至操做瀏覽器自己(截屏,窗口大小,啓動,關閉,安裝插件,配置證書之類的)。因爲使用的是瀏覽器原生的API,速度大大提升,並且調用的穩定性交給了瀏覽器廠商自己,顯然是更加科學。然而帶來的一些反作用就是,不一樣的瀏覽器廠商,對Web元素的操做和呈現多少會有一些差別,這就直接致使了Selenium WebDriver要分瀏覽器廠商不一樣,而提供不一樣的實現。例如Firefox就有專門的FirefoxDriver,Chrome就有專門的ChromeDriver等等。(甚至包括了AndroidDriver和iOS WebDriver)測試

 

 

3. Selenium3.0字體

Selenium 3.0 = Selenium 2.0 - Selenium RC(Remote Control

Selenium 3.0作了一些更新:

-Selenium3.0只支持Java8版本以上。

-Selenium3.0中的Firefox瀏覽器驅動獨立了,之前裝完selenium2就能夠驅動Firefox瀏覽器了,如今和Chrome同樣,必須下載和設置瀏覽器驅動。

-MAC OS 集成Safari的瀏覽器驅動。默認在/usr/bin/safaridriver 目錄下。

-只支持IE 9.0版本以上。

6. Selenium測試工具簡介

Selenium RC VS Selenium Webdriver

 

 

6.1 Selenium自動化測試工具的基本原理

Selenium自動化測試工具的基本原理

Selenium是一個用於Web應用程序測試的工具,支持多平臺、多瀏覽器、多語言去實現自動化測試,Selenium2將瀏覽器原生的API封裝成WebDriver API,能夠直接操做瀏覽器頁面裏的元素,甚至操做瀏覽器自己(截屏,窗口大小,啓動,關閉,安裝插件,配置證書之類的),因此就像真正的用戶在操做同樣。

 

 

 

6.1 Selenium自動化測試工具的基本原理

Selenium自動化測試工具的基本原理

webdriver是按照server–client的經典設計模式設計的: 

server端:webdriver的remote server,咱們的腳本啓動瀏覽器後,該瀏覽器就是remote server,它的職責就是等待client發送請求並作出響應。

 

client端:簡單說來就是測試腳本,好比打開瀏覽器,轉跳到特定的url等操做是以http請求的方式發送給被server端(也就是被測瀏覽器),server接受請求,並執行相應操做,並在response中返回執行狀態、返回值等信息。

6.1 Selenium自動化測試工具的基本原理

Selenium自動化測試工具的基本原理

The WebDriver Wire Protocol是Selenium本身設計定義的協議,這套協議很是之強大,幾乎能夠操做瀏覽器作任何事情,包括打開、關閉、最大化、最小化、元素定位、元素點擊、上傳文件等。

WebDriver Wire協議是通用的,也就是說無論FirefoxDriver仍是ChromeDriver,啓動以後都會在某一個端口啓動基於這套協議的Web Service

例如FirefoxDriver初始化成功,默認從http://localhost:7055 開始

IE則是http://localhost:52432,以下圖:

 

 

6.2 Selenium IDE的基本使用方法

Selenium IDE是Firefox的一個插件,用於錄製、回放自動化測試腳本,相似於QTP的自動錄製功能,自動生成各類語言的自動化測試腳本,包括java、Python、ruby、c#、perl。弊端是回放腳本失敗率較高。

安裝方法:

1.打開firefox 瀏覽器,進入官方網址:http://seleniumhq.org/download/

 

2.找到selenium IDE的下載連接,firefox會有提示安裝插件,點擊安裝便可

Selenium IDE的使用方法

1.打開插件,如上圖

2.點擊錄製按鈕

3.在瀏覽器中打開一個新的標籤----輸入百度網址-----在搜索欄輸入「 selenium 」 點擊搜索按鈕

4.錄製完成後,點擊紅色的按鈕,結束掉錄製。

5.點擊綠色的三角按鈕回放錄製的腳本。

 

 

 

6.2 Selenium IDE的基本使用方法

Selenium IDE的基本使用方法

1.文件:建立、打開和保存測試案例和測試案例集.編輯:複製、粘貼、刪除、撤銷和選擇測試案例中的全部命令.Options : 用於設置seleniunm IDE.

2.用來填寫被測網站的地址.

3.速度控制:控制案例的運行速度.

4.運行全部:運行一個測試案例集中的全部案例.

5.運行:運行當前選定的測試案例.

6.暫停/恢復:暫停和恢復測試案例執行.

7.單步:能夠運行一個案例中的一行命令.

8.錄製:點擊以後,開始記錄你對瀏覽器的操做.

9.案例集列表.

10.測試腳本;table標籤:用表格形式展示命令及參數.source標籤:用原始方式展示,默認是HTML語言格式,也能夠用其餘語言展現.

11.查看腳本運行經過/失敗的個數.

12.當選中前命令對應參數.

13.日誌/參考/UI元素/Rollup 日誌:當你運行測試時,錯誤和信息將會自定顯示.

 

1.編輯一行命令或註釋

Table標籤下選中某一行命令,命令由command、Target、value三部分組成。能夠對這三部份內容那進行編輯。

 

2.  插入命令

 在某一條命令上右擊,選擇「insert new command」命令,就能夠插入一個空白,而後對空白行進程編輯。

 

3. 插入註解

以上面一樣的方式右擊選擇「insert new comment」命令插入註解空白行,本行內容不被執行,能夠幫助咱們更好的理解腳本,插入的內容以紫色字體顯示。

 

4. 移動命令或註解

有時咱們須要移動某行命令的順序,咱們只須要左擊鼠標拖動到相應的位置便可。

 

6.3 使用Selenium測試工具要掌握的要點

掌握定位頁面元素的方法

熟悉Selenium經常使用API

學會處理多窗口事件,包括切換frame等

會利用截圖功能作錯誤記錄

 

--------------------------------------------------

 本博文部分資料從網上摘取,僅作學習和分享做用,並不是商業用途,若有侵權,請及時告知,以便撤下。

相關文章
相關標籤/搜索