欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

selenium+python自動(dòng)化測(cè)試之環(huán)境搭建

 更新時(shí)間:2019年01月23日 11:42:46   作者:zh175578809  
這篇文章主要介紹了selenium+python自動(dòng)化測(cè)試之環(huán)境搭建,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

最近由于公司有一個(gè)向谷歌網(wǎng)站上傳文件的需求,需要進(jìn)行web的自動(dòng)化測(cè)試,選擇了selenium這個(gè)自動(dòng)化測(cè)試框架,以前沒(méi)有接觸過(guò)這門技術(shù),所以研究了一下,使用python來(lái)實(shí)現(xiàn)自動(dòng)化腳本,從環(huán)境搭建到實(shí)現(xiàn)腳本運(yùn)行。

selenium是一個(gè)用于Web應(yīng)用程序測(cè)試的工具。Selenium測(cè)試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。支持自動(dòng)錄制動(dòng)作和自動(dòng)生成 .Net、Java、Python等不同語(yǔ)言的測(cè)試腳本。

環(huán)境搭建步驟:

1、首先要下載Python,下載地址:https://www.python.org/downloads/,可以選擇Python2.7或者Python3.x版本,我這里選擇的是Python3.6的版本。下載的是一個(gè)exe安裝文件,下載完直接安裝即可,我的安裝目錄是C:\Python36,安裝好以后將Python安裝目錄配置到環(huán)境變量中,然后在cmd中運(yùn)行python命令,如果出現(xiàn)以下界面就證明安裝成功了

2、下載selenium,可以選擇使用Python的pip命令和下載安裝包的方式

使用pip命令安裝,要保證安裝的Python中已經(jīng)安裝了pip工具,到Python目錄下的Scripts目錄中查看是否存在pip.exe文件,如果沒(méi)有的話,首先要下載pip安裝,下載路徑 https://pypi.python.org/pypi/pip/,下載后是一個(gè)壓縮包,將文件解壓到C:\Python36中,進(jìn)入到pip目錄,運(yùn)行python setup.py install命令完成pip安裝

使用pip安裝selenium,在cmd中運(yùn)行pip install selenium,安裝完成后會(huì)出現(xiàn)如下提示,selenium就安裝成功了

也可以選擇下載selenium安裝包,下載路徑 https://pypi.python.org/pypi/selenium,將壓縮包解壓到C:\Python36下,進(jìn)入selenium目錄,運(yùn)行python setup.py install,安裝完成后如下圖所示

這樣,運(yùn)行自動(dòng)化的環(huán)境就已經(jīng)算搭建完成了,可以來(lái)編寫自動(dòng)化腳本了,可以選擇使用Java或Python語(yǔ)言來(lái)實(shí)現(xiàn)自動(dòng)化測(cè)試腳本的編寫,本博客采用python來(lái)編寫腳本

新建文件selenium_test.py,右鍵選擇使用Edit with IDLE,在python安裝完成后,都會(huì)自帶一個(gè)IDLE的編輯器,可以直接在IDLE編輯器中編寫測(cè)試腳本,輸入以下內(nèi)容

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
print(driver.title)
driver.find_element_by_id("kw").send_keys("selenium")
driver.find_element_by_id("su").click()
time.sleep(3)
driver.close()

webdriver是一個(gè)Web應(yīng)用程序測(cè)試自動(dòng)化工具,用來(lái)驗(yàn)證程序是否如預(yù)期的那樣執(zhí)行。大致解釋一下上述腳本中的測(cè)試代碼

webdriver.Chrome():創(chuàng)建一個(gè)Chrome瀏覽器的webdriver實(shí)例

driver.get(“http://www.baidu.com“):打開(kāi)”http://www.baidu.com“頁(yè)面

driver.find_element_by_id(“kw”).send_keys(“selenium”):找到id為“kw”的元素,在這個(gè)頁(yè)面上為百度首頁(yè)的搜索框,在其中輸入“selenium”

driver.find_element_by_id(“su”).click():找到id為“su”的元素并點(diǎn)擊,在這個(gè)頁(yè)面上為百度首頁(yè)的“百度一下”按鈕

driver.close():退出瀏覽器

運(yùn)行測(cè)試腳本,在命令行中運(yùn)行python 腳本路徑或者直接F5運(yùn)行腳本。運(yùn)行后沒(méi)有啟動(dòng)瀏覽器,報(bào)錯(cuò)信息:

Traceback (most recent call last):
 File "C:\Python36-32\selenium_test.py", line 4, in <module>
  driver = webdriver.Chrome()
 File "C:\Python27\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 62, in __init__
  self.service.start()
 File "C:\Python27\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start
  os.path.basename(self.path), self.start_error_message)
WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home

這里用的是Chrome瀏覽器,需要下載Chrome驅(qū)動(dòng),這里提供一個(gè)ChromeDriver的下載地址:http://npm.taobao.org/mirrors/chromedriver,是官網(wǎng)的鏡像下載地址,下載后將ChromeDriver.exe放到Chrome瀏覽器的目錄下:C:\Google\Chrome\Application,并將目錄配置到環(huán)境變量中,這樣就可以找到驅(qū)動(dòng)了

再次運(yùn)行腳本,就可以運(yùn)行了,會(huì)自動(dòng)運(yùn)行瀏覽器,并打開(kāi)百度首頁(yè),搜索selenium關(guān)鍵字,然后關(guān)閉瀏覽器

也可以使用其他瀏覽器來(lái)運(yùn)行測(cè)試腳本,只要修改腳本的第一句代碼就可以了

driver = webdriver.Firefox() //使用Firefox瀏覽器
//driver = webdriver.Ie() //使用IE瀏覽器

在使用selenium3運(yùn)行Firefox瀏覽器時(shí),可能會(huì)報(bào)下面的錯(cuò)誤:

Traceback (most recent call last):
 File "C:\Python36-32\selenium_test.py", line 4, in <module>
  driver = webdriver.Firefox()
 File "C:\Python27\lib\site-packages\selenium\webdriver\firefox\webdriver.py", line 145, in __init__
  self.service.start()
 File "C:\Python27\lib\site-packages\selenium\webdriver\common\service.py", line 81, in start
  os.path.basename(self.path), self.start_error_message)
WebDriverException: Message: 'geckodriver' executable needs to be in PATH. 

這是因?yàn)樵贔irefox高版本中需要使用 geckodriver 來(lái)驅(qū)動(dòng),不再使用Selenium自帶的Firefox webdriver。

geckodriver下載地址:https://github.com/mozilla/geckodriver/releases,下載后將geckodriver.exe放到Firefox的安裝目錄下,并將目錄配置到環(huán)境變量中,就可以在Firefox中運(yùn)行腳本

在IE瀏覽器中運(yùn)行和Chrome瀏覽器是一樣的,也需要下載IE驅(qū)動(dòng),然后將驅(qū)動(dòng)所在的路徑配置到環(huán)境變量中

這樣,使用selenium+python運(yùn)行web自動(dòng)化測(cè)試的環(huán)境就已經(jīng)全部搭建完成了

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理Word2vec電影影評(píng)建模

    Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理Word2vec電影影評(píng)建模

    本文是Python機(jī)器學(xué)習(xí)NLP自然語(yǔ)言處理系列文章,帶大家開(kāi)啟一段學(xué)習(xí)自然語(yǔ)言處理 (NLP) 的旅程. 本篇文章主要學(xué)習(xí)NLP自然語(yǔ)言處理基本操作Word2vec電影影評(píng)建模
    2021-09-09
  • Python 比較兩個(gè) CSV 文件的三種方法并打印出差異

    Python 比較兩個(gè) CSV 文件的三種方法并打印出差異

    這篇文章主要介紹了Python 比較兩個(gè) CSV 文件并打印出差異,本文將討論比較兩個(gè) CSV 文件的各種方法,我們將包括執(zhí)行此操作的最“Pythonic”方式和可幫助簡(jiǎn)化此任務(wù)的外部 Python 模塊,需要的朋友可以參考下
    2023-06-06
  • Python lambda表達(dá)式原理及用法解析

    Python lambda表達(dá)式原理及用法解析

    這篇文章主要介紹了Python lambda表達(dá)式原理及用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • python numpy生成等差數(shù)列、等比數(shù)列的實(shí)例

    python numpy生成等差數(shù)列、等比數(shù)列的實(shí)例

    今天小編就為大家分享一篇python numpy生成等差數(shù)列、等比數(shù)列的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02
  • Python高并發(fā)解決方案實(shí)現(xiàn)過(guò)程詳解

    Python高并發(fā)解決方案實(shí)現(xiàn)過(guò)程詳解

    這篇文章主要介紹了Python高并發(fā)解決方案實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 淺析python,PyCharm,Anaconda三者之間的關(guān)系

    淺析python,PyCharm,Anaconda三者之間的關(guān)系

    Python是一種跨平臺(tái)的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,簡(jiǎn)單來(lái)說(shuō),python就是類似于C,Java,C++等,一種編程語(yǔ)言。這篇文章主要介紹了淺析python,PyCharm,Anaconda三者之間的關(guān)系,需要的朋友可以參考下
    2019-11-11
  • Python利用matplotlib實(shí)現(xiàn)餅圖繪制

    Python利用matplotlib實(shí)現(xiàn)餅圖繪制

    Pyplot作為Matplotlib的子庫(kù),提供了和MATLAB差不多的繪圖API。因此Pyplot作為常用的繪圖模塊,能很方便讓用戶繪制2D圖表。本文將為大家介紹如何利用Matplotlib繪制餅圖,感興趣的小伙伴可以了解一下
    2021-12-12
  • Python基本文件操作實(shí)用指南

    Python基本文件操作實(shí)用指南

    文件操作是我們開(kāi)發(fā)中必不可少的一項(xiàng)需求,下面這篇文章主要給大家介紹了關(guān)于Python基本文件操作的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Python隨機(jī)生成手機(jī)號(hào)、數(shù)字的方法詳解

    Python隨機(jī)生成手機(jī)號(hào)、數(shù)字的方法詳解

    這篇文章主要介紹了Python隨機(jī)生成手機(jī)號(hào)、數(shù)字的方法,結(jié)合完整實(shí)例形式分析了Python編程生成隨機(jī)手機(jī)號(hào)與數(shù)字的實(shí)現(xiàn)方法及相關(guān)函數(shù)用法,需要的朋友可以參考下
    2017-07-07
  • 在 Python 中使用 7zip 備份文件的操作

    在 Python 中使用 7zip 備份文件的操作

    這篇文章主要介紹了在 Python 中使用 7zip 備份文件的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12

最新評(píng)論