selenium 调用JS操作滚动条(java)来解决element not clickable的问题

  今天在运行自动化用例的时候,发现总是某个元素提示not  clickable。分析原因有可能是页面右下角那个大大的top图标,刚好挡住了我要点击的元素。要解决就得拉动页面,就需要操作页面上的滚动条。

  使用了一个比较简单的方法,在这里记录下来:

    

    JavascriptExecutor JS=(JavascriptExecutor) driver;
    String high="scroll(0,10000);";//滚动到Y值10000像素的位置,一般10000就到页面的底部了,可以根据自己需要调试
    JS.executeScript(high);

时间: 2024-12-29 11:49:19

selenium 调用JS操作滚动条(java)来解决element not clickable的问题的相关文章

flex调用JS报安全沙箱错误解决办法

flex调用JS方法弹窗时一般会报安全沙箱错误,只要将被调用的JS方法设置延时就可解决. function openKqQuery(){ window.showModalDialog("pages/ck/ckProjectQuery.jsp","", "dialogWidth=860px;dialogHeight=435px;dialogLeft=150px;dialogTop=220px;center=yes;help=no;resizable=no;s

python之selenium调用js(execute_script)

转载: http://www.cnblogs.com/fnng/p/3230768.html 本节重点: 调用js方法 execute_script(script, *args) 在当前窗口/框架 同步执行javaScript 脚本:JavaScript的执行. *参数:适用任何JavaScript脚本. 使用: driver.execute_script('document.title') 使快播登陆用户名输入框标红显示: #coding=utf-8 from selenium import

python selenium --调用js

转自:http://www.cnblogs.com/fnng/p/3230768.html 本节重点: 调用js方法 execute_script(script, *args) 在当前窗口/框架 同步执行javaScript 脚本:JavaScript的执行. *参数:适用任何JavaScript脚本. 使用: driver.execute_script(‘document.title’) 使快播登陆用户名输入框标红显示: #coding=utf-8 from selenium import w

在批处理中调用JS操作MongoDB

在MongoDB中,我们可以通过JS脚本去操作数据. 一.编写数据操作JS脚本 新建JS文件writeData.js,编写数据操作内容如下: var curTime = new Date(); db.user.insert({'name':'张三','password':'123456', 'UpdateTime':curTime}); 另存文件,将文本编码设置为“UTF-8”,否则会出现中文乱码. 二.编写批处理文件 新建批处理文件WriteDB.bat,其内容如下: @echo off d:

java+selenium使用JS、键盘滑动滚动条

本篇文章介绍如何使用JS和键盘对象对页面进行滑动滚动条-------------主要针对java做自动化测试的同学 一:使用键盘对象操作滚动条 //导包 import org.openqa.selenium.interactions.Actions; // 创建鼠标键盘操作对象 Actions actions = new Actions(driver); // -----------driver:是创建浏览器对象的变量(WebDriver driver=new ChromeDriver();)

selenium 常见操作,js操作-将元素滚动到页面可见区域

我们在自动化测试中,会遇到需要把浏览器页面的元素移动到可见区域,就需要使用页面向上或者向下滚动 js操作-滚动条:使用: selenium 当中使用 execute_script   (译:埃克斯Q特.思怪泼特) 方法 执行 js 语句: 页面元素滚动到可见区域常用的操作: 1.移动到元素element对象的“底端”与当前窗口的“底部”对齐: driver.execute_script("arguments[0].scrollIntoView(false);",element) 2.移

selenium 代理 Cookies 截图 等待 调用JS

改变用户代理 读取Cookies 调用Java Script Webdriver截图 页面等待 1. 改变用户代理 [java] view plain copy import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver;

在Java中直接调用js代码(转载)

http://blog.csdn.net/xzyxuanyuan/article/details/8062887 JDK1.6版添加了新的ScriptEngine类,允许用户直接执行js代码. 在Java中直接调用js代码 不能调用浏览器中定义的js函数,会抛出异常提示ReferenceError: “alert” is not defined.   package com.sinaapp.manjushri;  import javax.script.ScriptEngine;  import

谷歌、火狐浏览器下实现JS跨域iframe高度自适应的完美解决方法,跨域调用JS不再是难题!

谷歌.火狐浏览器下实现JS跨域iframe高度自适应的解决方法 导读:今天开发的时候遇到个iframe自适应高度的问题,相信大家对这个不陌生,但是一般我们都是在同一个项目使用iframe嵌套页面,这个ifame高度自适应网上一搜一大把,今天要讲的如何在不同的网站下进行相互的调用跟在同一个网站下是一个效果:例如我在自己的项目里面Iframe  了第一博客的页面  http://www.diyibk.com/   当第一博客的页面高度变化了怎么通知父页面呢? 这个时候在谷歌下肯定是拿不到 ifram