版本可能在調(diào)試調(diào)用高版本瀏覽器會出現(xiàn)系統(tǒng)提示報錯,在排除代碼錯誤的前提,可能是跟selenium版本與目標(biāo)調(diào)用瀏覽器版本不兼容。">
您的位置:軟件測試 > 開源軟件測試 > 開源功能測試工具 > Selenium
Selenium調(diào)用高版本瀏覽器異常問題
作者:一葉染秋 發(fā)布時間:[ 2016/10/21 11:27:46 ] 推薦標(biāo)簽:功能測試 Selenium

  一、概述
  我之前用過selenium 2.x版本操作老版本的firefox,很流暢,F(xiàn)在瀏覽器和selenium都升級后問題隨之而來。
  1.<selenium2.x> 版本可能在調(diào)試調(diào)用高版本瀏覽器會出現(xiàn)系統(tǒng)提示報錯,在排除代碼錯誤的前提,可能是跟selenium版本與目標(biāo)調(diào)用瀏覽器版本不兼容。
  <selenium3.x>版本則一定會出現(xiàn),官方提示了新版本的selenium調(diào)用瀏覽器,需要到指定網(wǎng)站下載一個類似“補丁文件”的東東(比如,selenium調(diào)用Firefox高版本的geckodriver文件)
  2.系統(tǒng)中的瀏覽器可能存在你不留意的更新升級,而且主流瀏覽器對selenium的控制現(xiàn)已普遍要用瀏覽器官方提供的控件補丁,才能正常調(diào)用操作瀏覽器。
  二、問題場景復(fù)原
  工作環(huán)境
  1.Ubantu 14.04版本
  2.Python 2.7 (本問題和python版本無關(guān))
  3.沒有提前下載瀏覽器對selenium的對應(yīng)補丁文件時候
  4.selenium調(diào)用本地Firefox瀏覽器或者Chrome瀏覽器(其他主流瀏覽器高版本同樣可能出錯)
  代碼
  #coding:utf-8
  from selenium import webdriver
  ‘’‘ 這是一段selenium代碼’‘’
  browser = webdriver.Firefox()
  browser.get("http://docs.seleniumhq.org/")
  browser.close()
  如果你調(diào)用的是Chrome瀏覽器,我們換成調(diào)用Chrome瀏覽器方法
  browser = webdriver.Chrome()
  注意:代碼沒有錯誤,錯誤的是selenium與高版本瀏覽器不兼容
  報錯信息
  調(diào)用Firfox瀏覽器方法報錯

  調(diào)用Chrome瀏覽器方法報錯

  報錯解讀
  1 對于調(diào)用Firefox瀏覽器,系統(tǒng)提示我們,缺少一個叫g(shù)eckodriver的文件,并且需要設(shè)置路徑指向
  2 對于調(diào)用Chrome瀏覽器,系統(tǒng)提示我們,缺少一個叫chromedriver的文件,并且需要設(shè)置路徑指向
  三、解決辦法
  Step1.你需要從selenium官網(wǎng)的提供網(wǎng)址針對不通瀏覽器下載這類補丁文件(每個主流瀏覽器的補丁文件都不相同)
  官方提供瀏覽器driver補丁文件下載地址:
  selenium提供瀏覽器官方driver補丁文件下載.

  Step2.把下載后的壓縮包,解壓縮后的文件,放在瀏覽器文件夾下,并且在終端命令行下配置環(huán)境變量
  舉例說明:

  1.我把調(diào)用Firefox瀏覽器的補丁文件geckodriver文件解壓縮后放在我本地的Firefox文件夾下
  2.對照geckodriver所在位置,我在終端執(zhí)行一條指令進(jìn)行配置路徑:
  #export PATH=$PATH:/usr/lib/firefox
  注意:我們配置環(huán)境變量指向的是瀏覽器補丁文件所在瀏覽器文件的位置,且不能指向這個文件。
  #export PATH=$PATH:/usr/lib/firefox/geckodriver
  如果這么輸入終端命令會出現(xiàn)如下報錯:

  3.關(guān)于Windows環(huán)境下,MacOS環(huán)境下,都需各位少俠們自己配置其相同原理的環(huán)境變量的操作,才能有效。

上一頁12下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd