selenium是一個web的自動化測試工具,和其它的自動化工具相比來說其最主要的特色是跨平台、跨瀏覽器。
支援windows、linux、MAC,支援ie、ff、safari、opera、chrome等。
此外還有一個特色是支援分布式測試案例的執行,可以把測試案例分布到不同的測試機器的執行,相當於分發機的功能。
關於selenium的原理、架構、使用等可以參考其官網的資料,這裡記錄如何搭建一個使用python的selenium測試案例開發環境。其實用python
來開發selenium的方法有2種:一是去selenium官網下載python版的selenium引擎;還有一個就是搭建robot自動化架構,而後安裝robot的
selenium外掛程式。
這裡記錄的是第一種搭建方式:
1、下載並安裝setuptools的Windows版本【這個工具是python的基礎包工具】
2、下載並安裝pip工具【這個工具是python的安裝包管理工具,類似於ubuntu的aptget工具】
3、通過pip命令安裝selenium工具
4、測試demo指令碼
具體安裝操作:
1、去這個地址http://pypi.python.org/pypi/setuptools下載setuptools【setuptools-0.6c11.win32-py2.6.exe】
2、直接安裝其Windows版本的安裝包,但需要對應的python版本支援
3、去這個地址http://pypi.python.org/pypi/pip下載pip【pip-1.0.2.tar.gz】
4、用winrar解壓,命令列進入其目錄輸入命令:python setup.py install
5、直接使用pip安裝selenium,命令為:pip install -U selenium
6、在命令列調用測試指令碼【python demo.py】
如果測試成功會看到開啟瀏覽器後進行google搜尋。另外selenium分版本1和版本2,這裡安裝是版本2的selenium。
附:demo的指令碼內容如下
#!/usr/bin/python# -*- coding: gb2312 -*-from selenium import webdriverfrom selenium.common.exceptions import TimeoutExceptionfrom selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0import time# Create a new instance of the Firefox driverdriver = webdriver.Chrome()# go to the google home pagedriver.get("http://www.google.com")# find the element that's name attribute is q (the google search box)inputElement = driver.find_element_by_name("q")# type in the searchinputElement.send_keys("Cheese!")# submit the form. (although google automatically searches now without submitting)inputElement.submit()# the page is ajaxy so the title is originally this:print driver.titletry: # we have to wait for the page to refresh, the last thing that seems to be updated is the title WebDriverWait(driver, 10).until(lambda driver : driver.title.lower().startswith("cheese!")) # You should see "cheese! - Google Search" print driver.titlefinally: driver.quit()#==================================