Selenium+Python: Web自动化测试脚本录制和编写并不困难,最复杂的还是环境搭建,工具包可以去这里下载(链接:http://download.csdn.net/detail/u013511989/9884096),具体可以按照下列步骤进行:
1.安装Python
Python的安装方法不再赘述,我这里使用的版本是Python3.5(工具包中含安装包)。
2.安装Selenium
打开cmd,输入pip install selenium。
3.安装可以录制、导出脚本的SeleniumIDE
将工具包中的"selenium_ide-2.9.1-fx.xpi"安装到Firefox中,可以录制脚本、导出脚本,如下图。
4.在Firefox浏览器上运行测试脚本
将工具包中的geckodriver.exe 放置在python安装目录,如C:python35。
执行以下Python代码,运行测试脚本。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
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)
time.sleep(3)
driver.close()
driver.quit()
5.在IE浏览器上运行测试脚本
将工具包中的IEDriverServer.exe 放置在IE浏览器安装目录,如C:Program Files (x86)Internet Explorer。
执行以下Python代码,运行测试脚本。
import time,os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
iedriver = "C:Program Files (x86)Internet ExplorerIEDriverServer.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)
time.sleep(3)
driver.close()
driver.quit()
Win7下预装高版本IE的情况下,启动IE WebDriver可能会出现以下错误:
org.openqa.selenium.WebDriverException: Unexpected error launching Internet Explorer. Protected Mode must be set to the same value (enabled or disabled) for all zones.
在这种情况下,要继续启动IE WebDriver进行自动化测试,需要修改注册表,进行如下操作:
①运行 regedit.exe
②找到HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsZones
③如果1-4号Key下面都有名叫2500的属性,则将其值改为相同的非零值
(我自己的系统上默认的是1,2号key 2500属性值为3,3,4号key 2500属性为0,我将3,4号key的值置为了3,IE WebDriver成功启动)
6.在Chrome浏览器上运行测试脚本
chromedriver下载地址 http://chromedriver.storage.googleapis.com/index.html
目前最新支持到Chrome34,如果要测试,则需要重新安装低版本的Chrome。
如果Chrome版本为31-34,则可以将工具包中的chromedriver.exe 放置在chrome安装目录,如C:Program Files (x86)GoogleChromeApplication。
执行以下Python代码,运行测试脚本。
import time,os
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
chromedriver = "C:Program Files (x86)GoogleChromeApplicationchromedriver.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)
time.sleep(3)
driver.close()
driver.quit()
7.Selenium代码编写
工具包中含有旧版pdf版中文参考手册,可参照。
或者参照python->selenium库中的描述编写。