selenium 基本语句

1.浏览器驱动对象

  1)库的导入

    from selenium import  webdriver

  2)创建浏览器对象

    driver = webdriver.Chrome()

    使用dir(driver)查看方法

  3)浏览器尺寸相关操作

  maximize_window()  最大化

  get_window_size()  获取浏览器尺寸

  set_window_size()  设置浏览器尺寸

3)浏览器位置相关操作

  get_window_position()  获取浏览器位置

  set_window_position(x,y设置浏览器位置

    :显示器以左上角为(0,0),所有的位置操作都是相对于显示器左上角展开的位移操作,单位是像素。

  4)浏览器的关闭操作

  close()  关闭当前标签/窗口

  quit()  关闭所有标签/窗口

2元素定位

selenium 基本语句_第1张图片

3.元素的操作 

  对元素的相关操作,一般要先获取到元素,再调用相关方法

  element = driver.find_element_by_xxx(value)

  1)点击和输入

    点击操作

  element.click()

    清空/输入操作(只能操作可以输入文本的元素)

    element.clear()  清空输入框

    element.send_keys(data)    输入数据

  2)提交操作

  element.submit()

3)获取元素信息

    获取文本内容(既开闭标签之间的内容)

    element.text

    获取属性值(获取element元素的value属性的值)

    element.get_attribute(value)

    获取元素尺寸(了解)

    element.size

    获取元素是否可见(了解)

  element.is_dispalyed()

4.多标签/多窗口之间的切换

有的时候点击一个链接,新页面并非由当前页面跳转过去,而是新开一个页面打开,这种情况下,计算机需要识别多标签或窗口的情况。

  1)获取所有窗口的句柄

    handles = driver.window_handlers

    调用该方法会得到一个列表,在selenium运行过程中的每一个窗口都有一个对应的值存放在里面

  2)通过窗口的句柄进入的窗口

  driver.switch_to_window(handles[n])

5.多表单/多框架切换

  在网页中,表单嵌套是很常见的情况,尤其是在登录的场景

  1)什么是多表单?

    实际上就是使用iframe/frame,引用了其他页面的链接,真正的页面数据并没有出现在当前源码中,但是在浏览器中我们看到,简单理解可以使页面中开了一个窗口显示另一个页面

  2)处理方法

    直接使用id值切换进表单

    driver.switch_to.frame(value)/driver.switch_to_frame(value)

    定位到表单元素,再切换进入

    el = driver.find_element_by_xxx(value)

    driver.switch_to.frame(el)  /driver.switch_to_frame(el)

6.多表单切换

  2)处理方法

    driver.switch_to.default_content()

   跳回最外层的页面

driver.switch_to.parent_frame()

   跳回上层的页面。

7.鼠标和键盘操作

  手动测试时键盘的操作在selenium页有实现,关于鼠标的操作由ActionChains()类来提供,关于键盘的操作由Key()类来提供

  1)鼠标操作

    * 导入动作链类,动作链可以储存鼠标的动作,并一起执行

    from selenium.webdriver import ActionChains

    ActionChains(driver)

  * 执行ActionChains中储存的所有动作

    perform()

    * 鼠标右击

    el = driver.find_element_by_xxx(value)

    context_click(el)

    el执行右击

WebDriver通过下表的功能来操纵浏览器

selenium 基本语句_第2张图片

WebDirver通过一些方法来实现与浏览器窗口、网页和页面元素的交互

selenium 基本语句_第3张图片

selenium 基本语句_第4张图片

你可能感兴趣的:(自动化测试,selenium)