selenium常用方法——基于Python
2017-11-03 22:52
344 查看
好啦~了解了怎样定位页面元素之后,就要学习怎样操作页面元素了。下面梳理了一些比较常用的方法:
一、获取元素属性、状态
driver.find_elemnet_by_id(‘ID’).is_displayed() 元素是否可见
driver.find_elemnet_by_id(‘ID’).is_selected() 元素是否被选中
driver.find_elemnet_by_id(‘ID’).is_enable() 元素是否被灰化
driver.find_elemnet_by_id(‘ID’).text 获取元素文本内容
driver.find_elemnet_by_id(‘ID’).get_attribute(‘属性名’) 获取元素对应属性的属性值
二、操作元素
1、输入框
driver.find_elemnet_by_id(‘ID’).clear() 清空输入框
driver.find_elemnet_by_id(‘ID’).send_keys(‘输入内容’) 输入
2、按钮
driver.find_elemnet_by_id(‘ID’).click() 点击
3、弹出对话框
(1)警告消息框(alert)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
(2)确认消息框(confirm)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
(3)提示消息对话框(prompt)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
.send_keys() 输入
4、表单
.submit() 提交表单
5、下拉选择框
(1)三种选中方式:select_by_index() 通过index选择,index从0开始
select_by_value() 通过匹配到的标签里的value值选择
select_by_visible_text() 通过匹配到的可见字符选择
(2)反选:deselect_by_index()
deselect_by_value()
deselect_by_visible_text()
Deselect_all()
(3)查看所选选项:option 返回这个下拉选择框所有的option
all_selected_options 返回所有被选中的选项的option
first_selected_option 返回第一个被选中的option
三、鼠标事件(在ActionChains类中):
.context_click() 右击
.double_click() 双击
.drag_and_drop() 拖动
.move_to_element() 鼠标悬停在一个元素上
.click_and_hold() 按下鼠标左键在一个元素上
四、键盘事件和组合快捷键
send_keys(Keys.BACK_SPACE) 删除键
send_keys(Keys.SPACE) 空格键
send_keys(Keys.TAB) 制表键
send_keys(Keys.ESCAPE) 回退键
send_keys(Keys.ENTER) 回车键
组合快捷键:如ctrl+A
send_keys(Keys.CONTROL,’a’)
五、操作cookie
get_cookies() 获取所有cookie信息
get_cookie(name) 返回特定name的cookie信息
get_cookie(cookie_dict) 添加cookie,必须有name和value值
delete_cookie(name) 删除特定的cookie信息
delete_all_cookies() 删除所有cookie信息
六、多窗口切换(解决在新tab页中找不到元素问题)
测试场景:打开百度新闻(页面A),点击热点新闻中第一个新闻链接(一般是国家领导人的新闻),会在第二个窗口打开这个新闻的具体详情页(页面B),测试需要去判断你点击这个这个新闻,在打开的详情页是否正确。
一、获取元素属性、状态
driver.find_elemnet_by_id(‘ID’).is_displayed() 元素是否可见
driver.find_elemnet_by_id(‘ID’).is_selected() 元素是否被选中
driver.find_elemnet_by_id(‘ID’).is_enable() 元素是否被灰化
driver.find_elemnet_by_id(‘ID’).text 获取元素文本内容
driver.find_elemnet_by_id(‘ID’).get_attribute(‘属性名’) 获取元素对应属性的属性值
二、操作元素
1、输入框
driver.find_elemnet_by_id(‘ID’).clear() 清空输入框
driver.find_elemnet_by_id(‘ID’).send_keys(‘输入内容’) 输入
2、按钮
driver.find_elemnet_by_id(‘ID’).click() 点击
3、弹出对话框
(1)警告消息框(alert)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
(2)确认消息框(confirm)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
(3)提示消息对话框(prompt)
.text() 获取对话框文本值
.accept() 相当于点击"确认"
.dismiss() 相当于点击"取消"
.send_keys() 输入
4、表单
.submit() 提交表单
5、下拉选择框
(1)三种选中方式:select_by_index() 通过index选择,index从0开始
select_by_value() 通过匹配到的标签里的value值选择
select_by_visible_text() 通过匹配到的可见字符选择
(2)反选:deselect_by_index()
deselect_by_value()
deselect_by_visible_text()
Deselect_all()
(3)查看所选选项:option 返回这个下拉选择框所有的option
all_selected_options 返回所有被选中的选项的option
first_selected_option 返回第一个被选中的option
三、鼠标事件(在ActionChains类中):
.context_click() 右击
.double_click() 双击
.drag_and_drop() 拖动
.move_to_element() 鼠标悬停在一个元素上
.click_and_hold() 按下鼠标左键在一个元素上
四、键盘事件和组合快捷键
send_keys(Keys.BACK_SPACE) 删除键
send_keys(Keys.SPACE) 空格键
send_keys(Keys.TAB) 制表键
send_keys(Keys.ESCAPE) 回退键
send_keys(Keys.ENTER) 回车键
组合快捷键:如ctrl+A
send_keys(Keys.CONTROL,’a’)
五、操作cookie
get_cookies() 获取所有cookie信息
get_cookie(name) 返回特定name的cookie信息
get_cookie(cookie_dict) 添加cookie,必须有name和value值
delete_cookie(name) 删除特定的cookie信息
delete_all_cookies() 删除所有cookie信息
六、多窗口切换(解决在新tab页中找不到元素问题)
测试场景:打开百度新闻(页面A),点击热点新闻中第一个新闻链接(一般是国家领导人的新闻),会在第二个窗口打开这个新闻的具体详情页(页面B),测试需要去判断你点击这个这个新闻,在打开的详情页是否正确。
news_link = driver.find_element_by_xpath("//*[@id='pane-news']/div/ul/li[1]/strong/a") page1_title_string = news_link.text #得到页面A新闻标题 news_link.click() # 点击新闻链接 time.sleep(1) handles = driver.window_handles for handle in handles:# 切换窗口 if handle != driver.current_window_handle: print 'switch to second window',handle driver.close() # 关闭第一个窗口 driver.switch_to.window(handle) #切换到第二个窗口 page2_title_string = driver.find_element_by_xpath("//*[@id='yc_con_txt']/p[1]").te 4000 xt
相关文章推荐
- 【selenium】Selenium基于Python3的Web自动化测试脚本在IE上运行慢的解决方法
- python selenium --一些常用方法
- python selenium2 常用方法
- python3 --selenium常用方法总结
- Python + Selenium自动化测试 -- Python常用方法
- Python Selenium 常用方法总结
- python+selenium初级(3)—WebElement接口常用方法
- selenium-python-常用方法集锦(不断补充)
- python selenium常用基本方法---H5和键盘鼠标操作
- selenium python 常用方法总结
- 初学者的Selenium自动化测试指南,基于Python(四)——常用鼠标事件
- 初学者的Selenium自动化测试指南,基于Python(五)——常用键盘事件
- Python Selenium 常用方法
- python常用的时间方法
- 在windows下基于python的selenium的配置
- 基于Selenium2与Python自动化测试环境搭建
- python os模块常用方法
- 常用的python模块及安装方法
- 基于json-lib.jar包 创建JSONObject的四个常用方法
- python,os模块的常用方法