webdriver+python 对三大浏览器的支持
1、在IE浏览器上运行测试脚本,首先需要下载IEDriverServer.exe(http://code.google.com/p/selenium/downloads/list,根据浏览器的版本下载32位或者64位的driver),放在IE浏览器的安装目录且同级目录下,脚本如下:
注意:需要将IE浏览器各个区域的保护模式设置的一样,要么全勾选,要么全不勾选,工具--Internet选项--安全。还需要将页面的缩放比例设置为100%.
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
iedriver = "C:\Program Files\Internet Explorer\IEDriverServer.exe"
os.environ["webdriver.ie.driver"] = iedriver #实测不加此句也行
driver = webdriver.Ie(iedriver)
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.send_keys("selenium")
elem.send_keys(Keys.RETURN)
assert "Google" in driver.title
driver.close()
driver.quit()
2、在Chrome浏览器上运行测试脚本,首先需要下载ChromeDriver.exe,webdriver没有实现chromedriver,要使用chrome浏览器需要自己下载chromedriver.exe(下载地址:http://code.google.com/p/chromedriver/downloads/list),这个程序是由Chrome团队提供的,你可以看做它是链接WebDriver和Chrome浏览器的桥梁。 放在Chrome浏览器的安装目录且同级目录下,脚本如下:
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
iedriver = "C:\Program Files\Internet Explorer\IEDriverServer.exe"
os.environ["webdriver.ie.driver"] = iedriver #实测不加此句也行
driver = webdriver.Ie(iedriver)
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.send_keys("selenium")
elem.send_keys(Keys.RETURN)
assert "Google" in driver.title
driver.close()
driver.quit()
2、在Chrome浏览器上运行测试脚本,首先需要下载ChromeDriver.exe,webdriver没有实现chromedriver,要使用chrome浏览器需要自己下载chromedriver.exe(下载地址:http://code.google.com/p/chromedriver/downloads/list),这个程序是由Chrome团队提供的,你可以看做它是链接WebDriver和Chrome浏览器的桥梁。 放在Chrome浏览器的安装目录且同级目录下,脚本如下:
import os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
chromedriver = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.send_keys("selenium")
elem.send_keys(Keys.RETURN)
assert "Google" in driver.title
driver.close()
driver.quit()
3、在Firefox浏览器上运行测试脚本,WebDriver实现了FireFoxDriver,无需用户下载FireFoxDriver。具体如下:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
chromedriver = "C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
driver = webdriver.Chrome(chromedriver)
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.send_keys("selenium")
elem.send_keys(Keys.RETURN)
assert "Google" in driver.title
driver.close()
driver.quit()
3、在Firefox浏览器上运行测试脚本,WebDriver实现了FireFoxDriver,无需用户下载FireFoxDriver。具体如下:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Firefox()
driver.get("http://www.python.org")
assert "Python" in driver.title
elem = driver.find_element_by_name("q")
elem.send_keys("selenium")
elem.send_keys(Keys.RETURN)
assert "Google" in driver.title
driver.close()
driver.quit()
总结:通过以上三个不同浏览器上的测试,说明selenium在python中的运用于其Java版本都是一样。由于Firefox是默认安装路径,webdriver可以正常访问找到他,如果非系统默认安装路径,则需要跟IE和Chrome一样来设置driver路径。