Python脚本控制的WebDriver 常用操作 <十二> send_keys模拟按键输入
2013-12-10 13:42
519 查看
下面将使用WebDriver中的send_keys来模拟键盘按键输入
ctrl+a
ctrl+c
ctrl+v
等。
另外有时候我们需要在测试时使用tab键将焦点转移到下一个元素,这时候也需要send_keys。在某些更复杂的情况下,还会出现使用send_keys来模拟上下键来操作下拉列表的情况。
测试Python代码:
测试用例场景
send_keys方法可以模拟一些组合键操作:ctrl+a
ctrl+c
ctrl+v
等。
另外有时候我们需要在测试时使用tab键将焦点转移到下一个元素,这时候也需要send_keys。在某些更复杂的情况下,还会出现使用send_keys来模拟上下键来操作下拉列表的情况。
Python脚本
测试HTML代码:<html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <title>send keys</title> <script type="text/javascript" async="" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" /> </head> <body> <h3>send keys</h3> <div class="row-fluid"> <div class="span3"> <div class="well"> <label>A</label> <textarea rows="10", cols="10" id="A">I think watir-webdriver is better than selenium-webdriver</textarea> </div> </div> <div class="span3"> <div class="well"> <label>B</label> <textarea rows="10", cols="10" id="B"></textarea> </div> </div> </div> </body> <script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script> </html>
测试Python代码:
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() file_path = 'file:///' + os.path.abspath('send_keys.html') dr.get(file_path) #todo: copy the content of A dr.find_element_by_id('A').send_keys((Keys.CONTROL,'a')) sleep(5) dr.find_element_by_id('A').send_keys((Keys.CONTROL,'x')) sleep(5) #todo:paste content of A to B dr.find_element_by_id('B').send_keys((Keys.CONTROL,'v')) sleep(5) #todo:send keys to A dr.find_element_by_id('A').send_keys('I', Keys.SPACE,'Love',Keys.SPACE,'AutoTesting') sleep(5) dr.quit()
相关文章推荐
- Python脚本控制的WebDriver 常用操作 <十> 层级定位
- Python脚本控制的WebDriver 常用操作 <二十> 处理表单元素
- Python脚本控制的WebDriver 常用操作 <二十八> 超时设置和cookie操作
- Python脚本控制的WebDriver 常用操作 <十三> 处理button group层的定位
- Python脚本控制的WebDriver 常用操作 <二十六> 上传文件
- Python脚本控制的WebDriver 常用操作 <五> 访问链接
- Python脚本控制的WebDriver 常用操作 <十六> 处理对话框
- Python脚本控制的WebDriver 常用操作 <二十二> 处理alert / confirm / prompt
- Python脚本控制的WebDriver 常用操作 <二十七> 文件下载
- Python脚本控制的WebDriver 常用操作 <一> 启动浏览器
- Python脚本控制的WebDriver 常用操作 <二> 关闭浏览器
- Python脚本控制的WebDriver 常用操作 <二十一> 执行JS
- Python脚本控制的WebDriver 常用操作 <二十四> 定位frame中的元素
- Python脚本控制的WebDriver 常用操作 <四> 设置浏览器大小
- Python脚本控制的WebDriver 常用操作 <十五> 处理Navigation Bar
- Python脚本控制的WebDriver 常用操作 <十八> 获取测试对象的css属性
- Python脚本控制的WebDriver 常用操作 <三> 浏览器最大化
- Python脚本控制的WebDriver 常用操作 <八> 简单的对象定位
- Python脚本控制的WebDriver 常用操作 <十七> 获取测试对象的属性及内容
- Python脚本控制的WebDriver 常用操作 <二十三> wait