selenium + python 多瀏覽器測試


selenium + python 多瀏覽器測試

 

  支持庫包

    在學習 Python + Selenium 正篇之前,先來看下對多瀏覽器模擬的支持。目前selenium包中已包含webdriver,help(webdriver) 查看其下package;也可以查看源文件

            

 

  啟動 Firefox

    firefox是selenium支持得比較成熟的瀏覽器,很多新的特性都會在firefox中體現。但是做頁面的測試,啟動速度比較慢,啟動以后運行速度還是可以接受的。可直接啟動firefox瀏覽器,參見如下代碼:

# !/usr/bin/env python
# -*- coding:utf-8 -*-  

from selenium import webdriver

browser = webdriver.Firefox()
browser.get('http://www.baidu.com')

    注意:你的電腦需要已裝Firefox,執行后會新開一Firefox窗口,並執行打開百度首頁的操作。

    

   啟動 Chrome

     啟動 chrome 需要下載 chromedriver,google 下載地址:http://chromedriver.storage.googleapis.com/index.html; 被禁就下這個吧:http://pan.baidu.com/s/1dD8Mn1f

     將該exe放入chrome程序包中,如

    

    將該地址添加入 path 環境變量中,如:D:\chrome(X64)-38.0.2125.101\Chrome-bin

    同樣的,啟動 chrome 打開百度首頁,參見如下代碼:

# !/usr/bin/env python
# -*- coding:utf-8 -*-  

from selenium import webdriver

browser = webdriver.Chrome()
browser.get('http://www.baidu.com')

   若仍執行出錯,建議查看下chrome版本,可能就是chrome本身的問題,或者參看下方使用os變量的方式。

 

  啟動 IE

    啟動 IE 類似 chrome,需要下載 IEdriver,google 下載地址:https://code.google.com/p/selenium/downloads/list; 被禁就下這個吧:http://pan.baidu.com/s/1c0hebio

    類似操作將此 exe 放入IE程序包及加入 path;代碼同chrome的,差別只在 browser = webdriver.Ie() ;  

    若環境變量啟動 webdriver 方式有問題,代碼執行報錯,可使用os變量方式,參考如下代碼(chrome 也可使用類似代碼):

# !/usr/bin/env python
# -*- coding:utf-8 -*-  

from os import environ
from selenium import webdriver

iedriver = "C:\Program Files\Internet Explorer\IEDriverServer.exe"
environ["webdriver.ie.driver"] = iedriver
browser = webdriver.Ie(iedriver)
browser.get("http://www.baidu.com")

 

  多瀏覽器代碼優化

    除了 Firefox、chrome、IE 以外,可看到 opera 、Safari 等也可支持,這邊就不一一介紹了,如果想要了解,可google。

    可寫一個 .py 來啟動瀏覽器,測試代碼僅需 import 即可。

 1 # !/usr/bin/env python
 2 # -*- coding:utf-8 -*-  
 3 
 4 from os import environ
 5 from selenium import webdriver
 6 
 7 ff = webdriver.Firefox()                    # Firefox
 8 ff.maximize_window()                        # full-window
 9 
10 chromedriver = "C:\Users\sisi\AppData\Local\Google\Chrome\Application\chromedriver.exe"
11 environ["webdriver.chrome.driver"] = chromedriver
12 chrome = webdriver.Chrome(chromedriver)     # Chrome
13 chrome.maximize_window()                    # full-window
14 
15 iedriver = "C:\Program Files\Internet Explorer\IEDriverServer.exe"
16 environ["webdriver.ie.driver"] = iedriver
17 ie = webdriver.Ie(iedriver)                 # IE
18 ie.maximize_window()                        # full-window
19 
20 
21 ''' Your testing code should be here '''
22 
23 TEST_URL = "http://www.baidu.com"        
24 
25 ff.get(TEST_URL)
26 chrome.get(TEST_URL)
27 ie.get(TEST_URL)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM