您的位置:首页 > 编程语言 > Python开发

python webdriver API

2015-09-02 22:39 615 查看
最近几篇将详细的讲解基于python 的webdriver API,笔者更愿意读者自已去查询webdriver API 中各种操作方法的使用,为了保持本书由浅入深的完整性。

浏览器的操作

1.1、浏览器最大化

在统一的浏览器大小下运行用例,可以比较容易的跟一些基于图像比对的工具进行结合,提升测试的灵活性及普遍适用性。比如可以跟sikuli 结合,使用sikuli 操作flash。

#coding=utf-8
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://www.baidu.com")
print "浏览器最大化"
driver.maximize_window() #将浏览器最大化显示
driver.quit()


1.2、设置浏览器宽、高

在不同的浏览器大小下访问测试站点,对测试页面截图并保存,然后观察或使用图像比对工具对被测页面的前端样式进行评测。比如可以将浏览器设置成移动端大小(320x480),然后访问移动站点,对其样式进行评估;

#coding=utf-8
from selenium import webdriver
driver = webdriver.Firefox()
driver.get("http://m.mail.10086.cn")
#参数数字为像素点
print "设置浏览器宽480、高800显示"
driver.set_window_size(480, 800)
driver.quit()


1.3、控制浏览器前进、后退

浏览器上有一个后退、前进按钮,对于浏览网页的人是比较方便的;对于web 自动化测试来说是一个比较难模拟的操作;webdriver 提供了back()和forward()方法,使实现这个操作变得非常简单。

#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Firefox()
#访问百度首页
first_url= 'http://www.baidu.com'
print "now access %s" %(first_url)
driver.get(first_url)
#访问新闻页面
second_url='http://news.baidu.com'
print "now access %s" %(second_url)
driver.get(second_url)
#返回(后退)到百度首页
print "back to %s "%(first_url)
driver.back()
#前进到新闻页
print "forward to %s"%(second_url)
driver.forward()
driver.quit()


为了使脚本的执行过程看得更清晰,在每一步操作上都加了print 来打印当前的URL 地址。运行结果如下:

>>> ================================ RESTART ================================
>>>
now access http://www.baidu.com now access http://news.baidu.com back to http://www.baidu.com forward to http://news.baidu.com[/code] 
实际测试中,这两个功能平时很少被使用,笔者所能想到的场景就是几个页面来回跳转,但又不想用get url 的情况下。

python 基础知识补充:

下面打开python shell 做以下练习:

name = ‘huhu’

age = 26

print “my name is %s” %name

my name is huhu

print “my age is %d” %age

my age is 26

print “my name is %d” %name

Traceback (most recent call last):

File “
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: