web自动化测试学习四-浏览器、键盘、鼠标、下拉框定位等操作

一、网页览器操作

1.获取浏览器名称
cu_name=driver.name
2.获取当前页面的url地址
cu_url=driver.current_url
3.获取当前页面标题
cu_title=driver.title
4.获取当前页面源代码
cu_html=driver.page_source
5.获取当前窗口句柄
cu_handle=driver.current_window_handle

二、浏览器操作

# 设置浏览器大小

driver.set_window_size(800,800)

# 设置浏览器最大化

driver.maximize_window()

#浏览器后退

driver.back()

#浏览器前进

driver.foreword()

#浏览器刷新

driver.refresh

#浏览器滚动,x是指本页面的相对水平位置,Y是指相对本页面的垂直位置‘

 js = 'window.scrollTo(X,Y)'
 driver.execute_script(js)

scrollBy(x,y)#x是向下移动位置,Y是向右移动距离

三、元素简单操作

click()  单击、clear()清空、send_keys()文本框输入、submit()提交表单

四、鼠标事件

from selenium.webdriver.common.action_chains import ActionChains

ActionChains 类提供的鼠标操作的常用方法:

perform() 执行所有 ActionChains 中存储的行为

context_click() 右击

double_click() 双击

drag_and_drop() 拖动

move_to_element() 鼠标悬停

五、键盘事件

from selenium.webdriver.common.keys import Keys

在使用键盘按键方法前需要先导入 keys 类包。

下面经常使用到的键盘操作:

send_keys(Keys.BACK_SPACE) 删除键(BackSpace)

send_keys(Keys.SPACE) 空格键(Space)

send_keys(Keys.TAB) 制表键(Tab)

send_keys(Keys.ESCAPE) 回退键(Esc)

send_keys(Keys.ENTER) 回车键(Enter)

send_keys(Keys.CONTROL,'a') 全选(Ctrl+A)

send_keys(Keys.CONTROL,'c') 复制(Ctrl+C)

send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X)

send_keys(Keys.CONTROL,'v') 粘贴(Ctrl+V)

send_keys(Keys.F1) 键盘 F1

六、下拉框操作

 (1)元素定位及操作方法一

      1.二次定位:

      2.基本思路,先定位 select 框,再定位 select 里的选项

     # 分两步:先定位下拉框,再点击选项,

 <html>
 <body>
  <select name="fruit" size=1>
   <option id='peach' value='taozi'>桃子</option>
   <option id='watermelon' value='xigua'>西瓜</option>
   <option id='orange' value='juzi' selected='selected'>橘子</option>
   <option id='peach' value='mihoutao'>猕猴桃</option>
   <option id='peach' value='shanza'>山楂</option>
   <option id='peach' value='lizi'>荔枝</option>
 </select>
 </body>
</html> 
from selenium import webdriver
import time
driver=webdriver.Firefox()
driver.implicitly_wait(30)
driver.maximize_window()
driver.get("file://d://select.html")
#遍历所有选项
select=driver.find_element_by_name("fruit")
all_options=select.find_elements_by_tag_name("option")
for option in all_options:
      print("选项文本:{}".format(option.text))
      print("选项值:{}".format(option.get_attribute("value")))
      option.click()
      time.sleep(3)
driver.quit()

2)元素定位及操作方法

  引入Select模块

       # 导入 select 模块 Select类

       from selenium.webdriver.support.select import Select

      1、select_by_index() :通过索引定位

  通过 select 选项的索引来定位选择对应选项(从 0 开始计数),如选择

  第三个选项:select_by_index(2)

       s = driver.find_element_by_id('nr') 

 

       Select(s).select_by_index(2)

       select_by_value() :通过 value 值定位

       2、通过选项的 value值来定位。每个选项,都有对应的 value 值

  第二个选顷对应的 value 值就是"20":select_by_value("20")

      3、select_by_visible_text() :通过文本值定位

      Select 模块里面还有一个更加高级的功能,可以直接通过选项的文本内容来定位。

       s = driver.find_element_by_id('nr') 

七、多窗口切换

  窗口切换,从而操作不同的窗口上的元素。 WebDriver 提供switch_to.window()方法可以切换到任意的窗口。

八、警告框处理

  在 WebDriver 中处理 JavaScript 所生成的 alert、confirm 以及 prompt 是很简单的。具体做法是使用switch_to_alert()方法定位到 alert/confirm/prompt。然后使用 text/accept/dismiss/send_keys 按需进行操做。

text:获取文本值

accept() :点击"确认"

dismiss() :点击"取消"或者叉掉对话框

send_keys() :输入文本值 --仅限于 prompt,在 alert 和 confirm 上没有输入框

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值