51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4066|回复: 0
打印 上一主题 下一主题

[转贴] WebDriver API 之常见操作

[复制链接]
  • TA的每日心情
    擦汗
    昨天 08:59
  • 签到天数: 1021 天

    连续签到: 2 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2021-4-2 10:25:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    浏览器操作:
        最大化:maximize_window()
        最小化:minimize_windows()
        set_window_size(width, heigth)
        前进/后退:forward( )  back( )
        关闭当前窗口/浏览器:close()  quit()

      获取页面标题和当前页面url:
         获取页面标题:title
         获取页面url:current_url
         页面刷新:refresh()

      元素操作:
        clear():清除元素内容。
        send_keys():向元素输入内容。
        click():单击元素。
        size:返回元素尺寸。
        text:返回元素文本。
        get_attribute(obj):返回元素某个属性的值。
        location:元素的坐标。
        page_source:获取网页源码。


      示例:

      鼠标事件:
        context_click(),右击。
        double_click(),左键双击。
        drag_and_drop,拖动。
        drag_and_drop_by_offset(),拖动到指定位置。
        move_to_element(),悬停。
        click_and_hold(),单击并按住不放。

      下拉框:
        通过value值选择:select_by_value('value');
        通过文本选择:select_by_visible_text('text');
        通过索引选择:select_by_index(index),索引从0开始。

      浏览器多窗口处理:   
        每一个浏览器窗口都有一个唯一的标识符,句柄,通过句柄来判断当前处于哪一个浏览器窗口,webdriver中提供了相应方法来进行浏览器窗口的切换。
        window_handles,获取所有浏览器窗口的句柄。
        current_window_handle,获取当前浏览器窗口句柄。
        switch_to.window('handle'),切换到指定浏览器窗口。
        close(),关闭当前浏览器窗口。

      页面多表单(多框架处理):
        switch_to.frame(),切换到指定表单。
        switch_to.default_content(),切换到最外层表单。
        switch_to.parent_frame(),切换到上一级表单。

      层级定位:先定位A元素,然后定位A下的元素。

      警告框处理:
        定位警告框:switch_to.altert();

        accept,接受,相当于点击【确定】
        dismiss,解散,相当于点击【取消】

      定位一组对象:定位到元素后进行批量操作。
        find_elements_by_xxxx(),返回一个列表。

      文件上传:
        使用input标签实现的上传:调用send_keys()方法将需要上传的文件路径发送到指定元素即可。
        非input标签实现的上传:借助AutoIt,使用 SendKeys第三方库 ,使用win32 GUI等工具实现上传。

      截图:
        一般在执行用例时,如果用例失败,则将当前窗口截图保存。
        方法:get_screenshot_as_file('imgname')

      验证码:
        屏蔽验证码功能。
        将验证码固定。
        Python-tesserct模块识别验证码。
      键盘事件:
        方法:send_keys(cmd)向指定元素发送键盘指令。
          Keys.BACK_SPACE,删除。
          Keys.SPACE,空格。
          Keys.TAB,横向制表符。
          Keys.ENTER,回车。
          Keys.CONTRAL,'a',全选。
          Keys.CONTRAL,'c',复制。
          Keys.CONTRAL,'x',剪切。
          Keys.CONTRAL,'v',粘贴。
          Keys.END,翻到页面底部。
          Keys.HOME,翻到页面顶部。
          Keys.PAGE_UP,向上翻页。
          Key.PAGE-DOWN,向下翻页。

      多浏览器处理,以及执行JS脚本的方法,此处先不多说,后续将会单独持续更新,想了解的小伙伴加个关注哦。
      以上就是我们在做web自动化时经常使用的一下WebDriber APT。
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-20 05:25 , Processed in 0.077082 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表