在web自動(dòng)化中目前selenium作為底層的自動(dòng)化測(cè)試是目前運(yùn)用最廣的宇智,但是各個(gè)公司都會(huì)在這個(gè)基礎(chǔ)之上進(jìn)行修改。首先當(dāng)我們測(cè)試環(huán)境有了之后我們需要做得就是去配置我們的driver匾效,這里的driver你可以理解為就是我們腳本和瀏覽器之間的橋梁舷蟀。在selenium里面一些簡(jiǎn)短的教程會(huì)這樣寫(xiě):
#coding=utf-8
fromselenium?importwebdriver
driver?=webdriver.Chrome()
有的人這樣寫(xiě)了之后會(huì)發(fā)現(xiàn)無(wú)法運(yùn)行,直接給出了下面的提示錯(cuò)誤:
Traceback (most recent call last):
??File"e:xxxxx/blog.py", line?3,?in<module>
????driver?=webdriver.Chrome()
??File"D:\python\lib\site-packages\selenium-3.11.0-py3.6.egg\selenium\webdriver\chrome\webdriver.py", line?68,?in__init__
????self.service.start()
??File"D:\python\lib\site-packages\selenium-3.11.0-py3.6.egg\selenium\webdriver\common\service.py", line?83,?instart
????os.path.basename(self.path),?self.start_error_message)
selenium.common.exceptions.WebDriverException: Message:?'chromedriver'executable needs to be?inPATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
這是一個(gè)很常見(jiàn)的錯(cuò)誤面哼,根據(jù)提示“'chromedriver' executable needs to be in PATH 我們只需要把chromedriver.exe這個(gè)文件的路徑添加到環(huán)境變量中就可以了,那什么是chromedriver.exe扫步,完全不知道魔策。selenium自動(dòng)化不是只需要selenium就可以了么?為什么要這個(gè)chromedriver河胎?其實(shí)在selenium2中默認(rèn)的是使用firefox的瀏覽器驅(qū)動(dòng)闯袒,selenium2也會(huì)自帶他的驅(qū)動(dòng),但是在selenium3之后就不會(huì)自帶了,那么就需要自己去官網(wǎng)下載政敢,我們這里使用的是谷歌瀏覽器其徙,那么就需要chromedriver的驅(qū)動(dòng)。好吧去下載喷户。
chromedriver淘寶的下載地址:https://npm.taobao.org/mirrors/chromedriver/ 這里可以自己選擇不同的版本唾那。
但是當(dāng)大家下載了運(yùn)行又會(huì)發(fā)現(xiàn)一個(gè)問(wèn)題有時(shí)候無(wú)法運(yùn)行,特別是java版本褪尝,為什么呢闹获?因?yàn)槟鉩hromedriver的版本和瀏覽器版本不對(duì)應(yīng)。這個(gè)可以查看每個(gè)chromedriver版本更新的日志河哑,及兼容版本避诽。
在上圖中我們可以清楚的知道那些版本對(duì)應(yīng)哪個(gè)版本瀏覽器。這個(gè)時(shí)候我們就輕松解決瀏覽器啟動(dòng)問(wèn)題了璃谨。
如果我們需要啟動(dòng)不同的瀏覽器那么只需要使用webdriver調(diào)用不同的瀏覽器方法就可沙庐,但是還是需要去下載各自的驅(qū)動(dòng),啟動(dòng)方法:
#coding=utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver2 = webdriver.Firefox()
driver1 = webdriver.Edge()
這樣我們就啟動(dòng)了不同的瀏覽器佳吞。
這個(gè)時(shí)候只需要我們?nèi)?xiě)需要打開(kāi)的網(wǎng)址就可以:
#coding=utf-8
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("http://www.5itest.cn/register")
創(chuàng)建了一個(gè)測(cè)試交流群轨功,如果對(duì)軟件測(cè)試、接口測(cè)試容达、自動(dòng)化測(cè)試古涧、面試經(jīng)驗(yàn)交流感興趣可加qq群:829792258,可以與同行一起交流技術(shù)