Python脚本控制的WebDriver 常用操作 <二十八> 超时设置和cookie操作
2013-12-19 21:10
661 查看
超时设置
测试用例场景
webdriver中可以设置很多的超时时间implicit_wait。识别对象时的超时时间。过了这个时间如果对象还没找到的话就会抛出异常
Python脚本
ff = webdriver.Firefox() ff.implicitly_wait(10) # seconds ff.get("http://somedomain/url_that_delays_loading") myDynamicElement = ff.find_element_by_id("myDynamicElement")
cookie操作
测试用例场景
webdriver可以读取并添加cookie。有时候我们需要验证浏览器中是否存在某个cookie,因为基于真实的cookie的测试是无法通过白盒和集成测试完成的。另外更加常见的一个场景是自动登陆。有很多系统的登陆信息都是保存在cookie里的,因此只要往cookie中添加正确的值就可以实现自动登陆了。什么图片验证码、登陆的用例就都是浮云了。
Python脚本
测试用Python脚本:
# coding=gbk ''' Created on 2013年12月19日 @author: Administrator ''' # -*- coding: utf-8 -*- from selenium import webdriver from selenium.webdriver.common.keys import Keys from time import sleep import os if 'HTTP_PROXY'in os.environ: del os.environ['HTTP_PROXY'] dr = webdriver.Firefox() url = 'http://www.baidu.com' dr.get(url) print dr.get_cookies() sleep(30) dr.delete_all_cookies() dr.add_cookie({'name': 'BAIDUID', 'value': 'B9FEA55ED1076B189EC01BAC09F15300001:FG=1'}) dr.add_cookie({'name': 'BDUSS', 'value': 'B9FEA55ED1076B189EC01BAC09F15300001:FG=1'}) dr.get(url) sleep(3) dr.quit()
cookie内容我修改过,如果你想看你的cookie,可以使用工具,下载地址:
http://www.9553.com/soft/16711.htm
相关文章推荐
- Python脚本控制的WebDriver 常用操作 <四> 设置浏览器大小
- Python脚本控制的WebDriver 常用操作 <十七> 获取测试对象的属性及内容
- Python脚本控制的WebDriver 常用操作 <九> 定位一组对象
- Python脚本控制的WebDriver 常用操作 <十六> 处理对话框
- Python脚本控制的WebDriver 常用操作 <二十二> 处理alert / confirm / prompt
- Python脚本控制的WebDriver 常用操作 <二十四> 定位frame中的元素
- Python脚本控制的WebDriver 常用操作 <三> 浏览器最大化
- Python脚本控制的WebDriver 常用操作 <十三> 处理button group层的定位
- Python脚本控制的WebDriver 常用操作 <二十六> 上传文件
- Python脚本控制的WebDriver 常用操作 <一> 启动浏览器
- Python脚本控制的WebDriver 常用操作 <五> 访问链接
- Python脚本控制的WebDriver 常用操作 <十五> 处理Navigation Bar
- Python脚本控制的WebDriver 常用操作 <七>浏览器前进和后退操作
- Python脚本控制的WebDriver 常用操作 <二十> 处理表单元素
- Python脚本控制的WebDriver 常用操作 <二十三> wait
- Python脚本控制的WebDriver 常用操作 <十八> 获取测试对象的css属性
- Python脚本控制的WebDriver 常用操作 <二> 关闭浏览器
- Python脚本控制的WebDriver 常用操作 <八> 简单的对象定位
- Python脚本控制的WebDriver 常用操作 <二十七> 文件下载
- Python脚本控制的WebDriver 常用操作 <二十一> 执行JS