Selenium+Python多浏览器测试-自动化测试
更新时间:2022-04-29 09:18:36 作者:多测师 浏览:265
支持库包
在学习 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)
以上内容为大家介绍了自动化测试中的Selenium+Python多浏览器测试,本文由多测师亲自撰写,希望对大家有所帮助。了解更多自动化测试相关知识:https://www.aichudan.com/xwzx/