Selenium出來已經有不少年了,從最初的Selenium1到後來的Selenium2,也變得愈來愈成熟,並且也已經被不少公司普遍使用。Selenium發展的過程當中,分了不少模塊,這裏咱們主要介紹Webdriver,Webdriver已經被不少瀏覽器所兼容。WebDriver在自動化腳本和瀏覽器之間充當的角色和以前介紹的Appium很像。html
因爲如今不少的瀏覽器都已經主動支持和兼容了WebDriver,因此Webdriver在啓動後,會確認瀏覽器的native component是否存在可用並且版本匹配,接着就在目標瀏覽器裏啓動使用Selenium本身設計定義的協議(WebDriver Wire Protocol),WebDriver Wire協議是通用的,也就是說無論是FirefoxDriver仍是ChromeDriver等,啓動以後都會在某一個端口啓動基於這套協議的Web 服務,WebDriver Wire協議是一套基於RESTful的web服務。web
在調用WebDriver的時候,其實是給在瀏覽器上啓動的RESTful服務監聽端口上發送http請求,請求會以WebDriver Wire協議規定的JSON格式的字符串來告訴Selenium但願瀏覽器執行什麼樣的操做。chrome
經過http://www.seleniumhq.org/ 能夠訪問Selenium官網。從該網站上能夠下載到各類瀏覽器運行須要的Driver。數據庫
從http://www.seleniumhq.org/docs/ 地址能夠查詢到關於Selenium的文檔和介紹等信息。瀏覽器
在Selenium2Library庫中,Open Browser關鍵字用來打開一個指定的瀏覽器,該關鍵字接收以下參數:安全
參數(Arguments)框架 |
說明post |
url測試 |
瀏覽器中須要打開的url地址網站 |
browser |
指定須要打開的瀏覽器類型,包括IE,Firefox,chrome,opera, safari等經常使用的瀏覽器,默認使用Firefox |
alias |
設定的瀏覽器實例的別名,能夠用於瀏覽器之間的切換,默認爲None |
remote_url |
是否啓用經過remote server的形式來訪問,默認爲False |
desired_capabilities |
能夠指定的配置參數,默認爲None |
ff_profile_dir |
該參數主要針對火狐瀏覽器,能夠經過該參數指定firefox profile路徑,默認爲None |
Close Browser 關鍵字用來關閉一個已經打開的當前瀏覽器。
示例1:打開谷歌瀏覽器,url地址中輸入http://www.baidu.com
Open Browser http://www.baidu.com chrome
執行結果:
Starting test: RobotFrameworkTest1.TestSuite6.TestCase0002
20170529 15:22:55.284 : INFO : Opening browser 'chrome' to base url 'http://www.baidu.com'
Ending test: RobotFrameworkTest1.TestSuite6.TestCase0002
示例2:打開IE瀏覽器,url地址中輸入http://www.baidu.com,而後關閉瀏覽器
Open Browser http://www.baidu.com ie
Close Browser
執行結果:
Starting test: RobotFrameworkTest1.TestSuite6.TestCase0001
20170529 15:31:01.937 : INFO : Opening browser 'ie' to base url 'http://www.baidu.com'
Ending test: RobotFrameworkTest1.TestSuite6.TestCase0001
另外在使用IE瀏覽器時,須要將瀏覽器選項中,安全標籤下的每一個區域中是否啓用保護模式保持一致,要麼所有啓用,要麼所有不啓用,以下圖所示,否則的話容易出現相似WebDriverException: Message: Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones.的報錯。
【原文歸做者全部,歡迎轉載,可是保留版權,而且轉載時,須要註明出處】
Robot Framework自動化測試框架核心指南電子版試讀
相關博文彙總:
RobotFramework下的http接口自動化Create Http Context關鍵字的使用
RobotFramework下的http接口自動化Get關鍵字的使用
RobotFramework下的http接口自動化post關鍵字的使用
RobotFramework下的http接口自動化Get Response Body關鍵字的使用
RobotFramework下的http接口自動化Get Response Status 關鍵字的使用
RobotFramework下的http接口自動化Get Response header 關鍵字的使用
RobotFramework下的http接口自動化Set Request Header 關鍵字的使用
RobotFramework下HttpLibrary庫其它關鍵字
RobotFramework下的http接口自動化Set Request Body 關鍵字的使用
RobotFramework下的http接口自動化Follow Response關鍵字的使用
RobotFramework自動化測試框架的基礎關鍵字(一)
RobotFramework自動化測試框架的基礎關鍵字(二)
RobotFramework自動化測試框架的基礎關鍵字(三)
RobotFramework自動化測試框架的基礎關鍵字(四)
RobotFramework自動化測試框架的基礎關鍵字(五)
RobotFramework自動化測試框架-移動手機自動化測試AppiumLibrary介紹
RobotFramework自動化測試框架-移動手機自動化測試Open Application關鍵字的使用
RobotFramework自動化測試框架-經常使用斷言關鍵字
RobotFramework自動化測試框架-移動手機自動化測試AppiumLibrary庫其它的常見自動化關鍵字
RobotFramework自動化測試框架-移動手機自動化測試Input Text和Click Button關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Clear Text關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Click Element關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Click A Point關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Click Element At Coordinates關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Get Element Location關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Get Network Connection Status和Set Network Connection Status關鍵字的使用
RobotFramework自動化測試框架-移動手機自動化測試Element Attribute Should Match關鍵字的使用
RobotFramework自動化測試框架-DatabaseLibrary庫的使用(對數據庫的操做)
RobotFramework自動化測試框架-使用Python編寫自定義的RobotFramework Lib
RobotFramework自動化測試框架-Selenium Web自動化(-)-Open Browser和Close Browser