zoukankan      html  css  js  c++  java
  • RobotFramework操作浏览器滚动条

    RobotFramework操作浏览器滚动条

     (2016-12-21 11:52:43)
    标签: 

    selenium

     

    it

    分类: 自动化测试

    其实只要是用多了selenium+webdriver这套东西的人,滚动条很多时候都少用,只要你第一次打开页面能加载出来的元素,就能操作,html中是有的,比如吧,一个按钮没有显示在窗口中,但是这个按钮是在html中存在的,就能操作。当然也有个别情况:

    1.操作的时候元素重叠了,会点击不到而报错,一般会在窗口缩小或者弹窗需要等待Ns才消失的情况;

    2.就是第一次页面没有加载出来的,需要滚动到相应位置才能定位到。

    一、selenium的操作滚动条方式

    肯定都是使用js操作啦,操作浏览器本身的,10000的值动态的,0为最上,想滑动到什么位置填写数字去调试;

    js="var q=document.documentElement.scrollTop=10000"

    driver.execute_script(js)

    内嵌的滚动条,定位到再滚,不对是滚动,滚好像太粗鲁了

    js="var q=document.getElementByIdx_x('id').scrollTop=10000"

    driver.execute_script(js)



    二、robotframework

    RF框架是不是一样用js呢?大家可以去尝试,反正我是各种尝试了,在google上也有各种版本,包括

    1."Execute Javascript document.getElementByIdx_x('id').scrollTop=10000"

    2."Execute Javascript var q=document.getElementByIdx_x('id').scrollTop=10000"

    3."Execute Javascript js="var q=document.getElementByIdx_x('id').scrollTop=10000""

    总之各种版本都试过了,然并卵,没一个行的。不过还好提供了一个Focus关键字,可以通过这个关键字定位到某个元素再操作

    比如:Focus id=passwd

    又来但是了,这个元素的locator不显示咋搞,通过大海捞针总算找到了

    window.scrollBy(0, document.body.scrollHeight)

    window.scrollTo(0, document.body.scrollHeight)

    两种都可以啊,document.body.scrollHeight表示滑到最底部,如果要滑到什么位置,通过填写值来调试,比如

    "Execute Javascript window.scrollTo(0, 50)"

    三、使用模拟键盘操作down键

  • 相关阅读:
    023_带标签的break和continue
    5.利用for循环打印九九乘法表
    4.用while和for循环输出1到100之间能被5整除的数,且每行输出3个。
    Python字典由value查key
    python保存字典到文件
    python查找列表中某个元素所有下标的两个方法
    聚类算法评估指标:IoU, mPA, MoF
    二分图与匈牙利算法,Python实现
    行为检测和识别领域的一些研究人员的主页及文章代码的链接
    python 计时
  • 原文地址:https://www.cnblogs.com/lgqboke/p/8277170.html
Copyright © 2011-2022 走看看