基于Python和Selenium API实现自动化测试网站功能

基于Python和Selenium API可实现自动测试网站功能,这里介绍一下Selenium 的安装和基本使用,至于开发代码这里不做详细解说。

windows系统安装Python和Selenium环境:

1、安装python2.7 想必用过python的都知道pthon官网吧,这里不就多说了,去官网下载安装

2、安装setuptools工具,因为安装pip和selenium时需要setuptools模块,下载:http://pan.baidu.com/s/15R6w4

双击即可安装setuptools-0.6c11.win32-py2.7.exe安装至C:\Python27\Lib\site-packages(C:\Python27\是我这里python的安装目录)

3、安装pip

pip是软件包管理工具,呆会安装selenium时需要用到pip,下载:http://pan.baidu.com/s/1j6TeR

将文件解压到c:\Python下,在DOS下运行:cd C:\Python\pip-1.0.2\ 进入pip安装目录下执行命令:

\Python27\python.exe setup.py install 默认安装在:C:\python27\Scripts下。

4、安装selenium

在C:\python27\Scripts下运行:pip install -U selenium

运行完后屏幕出现:

Successfully installed selenium

Cleaning up...

表示成功安装。

5、安装浏览器插件

我用的是火狐浏览器,这里介绍一下火狐上webdriver插件的安装,在C:\Python27\Lib\site-packages\selenium\webdriver\firefox目录下找到webdriver.xpi文件,将这个文件拖到火狐浏览器中即可安装。

其他浏览器的插件安装(在网上找的资料)

安装chrome webdriver 解压chromedriver.exe到的安装目录下,如C:\Python27。添加C:\Users\Administrator\AppData\Local\Google\Chrome\Application\(chrome安装路径,这里是win7下的安装路径)到环境变量path

安装ie webdriver 复制IEDriverServer.exe到C:\Python27 设置IE浏览器,Internet选线安全,把各模式的“启动保护模式”设置成一样(或者全部启动,或者全部不启动)。


下面是一个简单的百度搜索功能测试用例:

百度输入对话框的源代码如下:

145611761.jpg

<form id="s_ps_form" onsubmit="javascript:F.call('ps/sug','pssubmit');" action="http://www.baidu.com/s" name="f">

<input id="kw" type="text" style="width:474px;" maxlength="100" name="wd" autocomplete="off"></input>
<input type="hidden" value="1" name="rsv_spt"></input>
<input type="hidden" value="1" name="issp"></input>
<input type="hidden" value="0" name="rsv_bp"></input>
<input type="hidden" value="utf-8" name="ie"></input>
<input type="hidden" value="baiduhome_pg" name="tn"></input>
<span class="btn_wr"> … </span>
<div id="sd_1382079119270" class="s-ps-sug" style="display: none;"></div>

</form>


python功能测试代码:

#coding:utf-8

#加载webdriver模块

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

#使用Firfox浏览器
driver = webdriver.Firefox()

#测试网址
driver.get("http://www.baidu.com/")

#寻找网址源代码的对话框ID
elem = driver.find_element_by_id("kw")

#输入要搜索的内容
elem.send_keys(u"桌面")

#寻找“百度一下”的ID
elem = driver.find_element_by_id("su")

#点击“百度一下”
elem.click()
#cookie= {"key":"value"}
#driver.add_cookie(cookie)
#输出cookie
all_cookie = driver.get_cookies()
print all_cookie
for cookie_name,cookie_value in all_cookie[0].items():
print "%s -> %s"%(cookie_name,cookie_value)

运行后的结果如下:

150608375.jpg

150609564.jpg

关于更多Selenium API 请参见http://docs.seleniumhq.org/

你可能感兴趣的:(python,selenium,自动化测试,网站功能测试)