關(guān)于Selenium WebDriver的geckodriver and ChromeDriver.exe

http://blog.csdn.net/jinhe123/article/details/69946234


Selenium作為網(wǎng)站UI測試?yán)饕磷蹋瑸楹诤泄δ軠y試人員所喜愛唯欣。

下載Selenium的最新版本地址:http://selenium-release.storage.googleapis.com/index.html

友情提示:如果一直下載不了,可能是瀏覽器與下載工具的沒有兼容序愚,或者沒安裝下載工具的插件。用IE瀏覽器打開勺三,可以完整下載愕鼓。如果沒有這個問題就忽略钙态。

時至今日,Selenium已經(jīng)到了3.3.1版了(2017年3月7日)菇晃。

自從Selenium3發(fā)布以來册倒,火狐瀏覽器(Selenium支持火狐的技術(shù)最為成熟,因為可以方便獲取從而控制網(wǎng)頁信息磺送,也是測試人員最喜歡用的瀏覽器之一)成為了一個普遍的問題驻子。

因為Selenium3不支持向前支持火狐瀏覽器了,40以后版本的火狐估灿,運行會出現(xiàn)問題崇呵。

例如Java代碼:(實現(xiàn)打開瀏覽器,輸入"WebDriver"馅袁,搜索后域慷,關(guān)閉瀏覽器)

[java]?view plain?copy

package?com.selenium.test;??


import?org.openqa.selenium.By;??

import?org.openqa.selenium.WebDriver;??

import?org.openqa.selenium.WebElement;??

import?org.openqa.selenium.firefox.FirefoxDriver;??


public?class?seleniumHello?{??


public?static?void?main(String[]?args)?{??

//如果火狐瀏覽器沒有默認安裝在C盤,需要自己確定其路徑??

System.setProperty("webdriver.firefox.bin",?"D:/Program?Files/Mozilla?Firefox/firefox.exe");???

//定義驅(qū)動對象為?FirefoxDriver?對象??

WebDriver?driver?=new?FirefoxDriver();??

//打開的網(wǎng)址??

driver.get("http://www.baidu.com/");??


//定位輸入框元素??

WebElement?txtbox?=?driver.findElement(By.name("wd"));??

//在輸入框輸入文本??

txtbox.sendKeys("WebDriver");??

//定位按鈕元素??

WebElement?btn?=?driver.findElement(By.id("su"));??

//點擊按鈕??

????????btn.click();??


//關(guān)閉驅(qū)動??

????????driver.close();??

????}??

}??

友情提示:如果運行后汗销,你發(fā)現(xiàn)只打開了瀏覽器犹褒,而沒有打開網(wǎng)址。那么多數(shù)是版本問題:Selenium版本為3大溜,或者火狐版本太高化漆,一般Selenium2支持46以下的。

目前火狐版本是:50

現(xiàn)在運行會發(fā)現(xiàn)問題钦奋,在console中出現(xiàn)的提示是:

Exception in thread "main" java.lang.IllegalStateException: The path to the driver executable must be set by the webdriver.gecko.driver system property; for more information, see https://github.com/mozilla/geckodriver. The latest version can be downloaded from https://github.com/mozilla/geckodriver/releases

這就是要求要安裝geckodriver了(支持3.3.1)座云。

之前版本的Selenium客戶端疙赠,遵循:W3C WebDriver specification? 鏈接:https://w3c.github.io/webdriver/webdriver-spec.html

解決的辦法就是:

1、到官網(wǎng)上下載與系統(tǒng)相應(yīng)的最新版本geckodriver:https://github.com/mozilla/geckodriver/releases

從2015年4月9日的wires V0.1.0版朦拖,直到2017年3月8日的最新V0.15.0圃阳,走過了15次的版本更新。

2璧帝、解壓后捍岳,將文件存放在自己設(shè)置的一個目錄里。

例如睬隶,我下載的是windows版本锣夹,將其放在D:\selenium目錄下,文件名為:geckodriver.exe

3苏潜、將代碼改為如下:

[java]?view plain?copy

package?com.selenium.test;??

import?org.openqa.selenium.By;??

import?org.openqa.selenium.WebDriver;??

import?org.openqa.selenium.WebElement;??

import?org.openqa.selenium.firefox.FirefoxDriver;??



public?class?seleniumHello?{??


public?static?void?main(String[]?args){??

System.setProperty("webdriver.gecko.driver",?"D:\\selenium\\geckodriver.exe");??

WebDriver?driver=new?FirefoxDriver();??

driver.get("http://www.baidu.com/");??

????????driver.manage().window().maximize();??

WebElement?txtbox=driver.findElement(By.name("wd"));??

txtbox.sendKeys("WebDriver");??

WebElement?btn=driver.findElement(By.id("su"));??

????????btn.click();??

????????driver.close();??

????}??

}??

執(zhí)行后银萍,在控制臺顯示:

瀏覽器正常啟動,并執(zhí)行了搜索恤左。

什么是Gecko和Gecko Driver

Gecko是由Mocilla開發(fā)的許多應(yīng)用程序中的Web瀏覽器引擎贴唇。

Gecko則是一種介于你的Selenium的測試代碼與Firfox瀏覽器之間的鏈接,是使用W3C?

WebDriver兼容客戶端的一種代理與Gecko核心瀏覽器交互飞袋。

火狐瀏覽器用可執(zhí)行程序GeckoDriver.exe的方式執(zhí)行WebDriver協(xié)議戳气。所有的測試腳本都通過GeckoDriver來執(zhí)行。

其他瀏覽器:Chrome

平時用的四款瀏覽器:Chrome巧鸭、360瓶您、IE和火狐。

平時使用的話從穩(wěn)定蹄皱、速度實用的角度览闰,推薦Chrome,打開谷歌也更穩(wěn)定和順暢巷折。

這里也順便提一下压鉴,Selenium webDriver 如何連上Chrome

Chrome瀏覽器要下載一個ChromeDriver.exe

下載地址:https://sites.google.com/a/chromium.org/chromedriver/,目前最新版本是2.29

代碼寫為如下:

[java]?view plain?copy

package?com.selenium.test;??

import?org.openqa.selenium.By;??

import?org.openqa.selenium.WebDriver;??

import?org.openqa.selenium.WebElement;??

import?org.openqa.selenium.chrome.ChromeDriver;??


public?class?seleniumHello?{??


public?static?void?main(String[]?args){??

System.setProperty("webdriver.chrome.driver",?"D:\\selenium\\ChromeDriver.exe");??

WebDriver?driver=new?ChromeDriver();??

driver.get("http://www.baidu.com/");??

????????driver.manage().window().maximize();??

WebElement?txtbox=driver.findElement(By.name("wd"));??

txtbox.sendKeys("WebDriver");??

WebElement?btn=driver.findElement(By.id("su"));??

????????btn.click();??

try?{??

Thread.sleep(5000);??

}catch?(InterruptedException?e)?{??

????????????e.printStackTrace();??

????????}??

????????driver.close();??

????}??

}??

就可以正常打開Chrome并進行搜索了锻拘。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末油吭,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子署拟,更是在濱河造成了極大的恐慌婉宰,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件推穷,死亡現(xiàn)場離奇詭異心包,居然都是意外死亡,警方通過查閱死者的電腦和手機馒铃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進店門蟹腾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來痕惋,“玉大人,你說我怎么就攤上這事娃殖≈荡粒” “怎么了?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵炉爆,是天一觀的道長堕虹。 經(jīng)常有香客問我,道長芬首,這世上最難降的妖魔是什么赴捞? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮衩辟,結(jié)果婚禮上螟炫,老公的妹妹穿的比我還像新娘波附。我一直安慰自己艺晴,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布掸屡。 她就那樣靜靜地躺著封寞,像睡著了一般。 火紅的嫁衣襯著肌膚如雪仅财。 梳的紋絲不亂的頭發(fā)上狈究,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天,我揣著相機與錄音盏求,去河邊找鬼抖锥。 笑死,一個胖子當(dāng)著我的面吹牛碎罚,可吹牛的內(nèi)容都是我干的磅废。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼荆烈,長吁一口氣:“原來是場噩夢啊……” “哼拯勉!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起憔购,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤宫峦,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后玫鸟,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體导绷,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年屎飘,在試婚紗的時候發(fā)現(xiàn)自己被綠了妥曲。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片账蓉。...
    茶點故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖逾一,靈堂內(nèi)的尸體忽然破棺而出铸本,到底是詐尸還是另有隱情,我是刑警寧澤遵堵,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布箱玷,位于F島的核電站,受9級特大地震影響陌宿,放射性物質(zhì)發(fā)生泄漏锡足。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一壳坪、第九天 我趴在偏房一處隱蔽的房頂上張望舶得。 院中可真熱鬧,春花似錦爽蝴、人聲如沸沐批。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽九孩。三九已至,卻和暖如春发框,著一層夾襖步出監(jiān)牢的瞬間躺彬,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工梅惯, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留宪拥,地道東北人。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓铣减,卻偏偏與公主長得像她君,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子徙歼,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容