首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Scroll Into View之后,如何在Selenium Java中获得元素的新绝对坐标?

在Selenium Java中,可以通过以下步骤来获取元素的新绝对坐标:

  1. 首先,使用scrollIntoView方法将目标元素滚动到可见区域。这可以通过执行JavaScript代码来实现,例如:
代码语言:txt
复制
JavascriptExecutor js = (JavascriptExecutor) driver;
WebElement element = driver.findElement(By.xpath("xpath_of_element"));
js.executeScript("arguments[0].scrollIntoView(true);", element);
  1. 然后,使用getLocation方法获取元素的坐标。这将返回元素的左上角相对于页面左上角的坐标。例如:
代码语言:txt
复制
Point location = element.getLocation();
int x = location.getX();
int y = location.getY();
  1. 最后,使用executeScript方法执行JavaScript代码来获取页面的滚动偏移量。这可以通过以下代码实现:
代码语言:txt
复制
Long scrollX = (Long) js.executeScript("return window.pageXOffset;");
Long scrollY = (Long) js.executeScript("return window.pageYOffset;");
  1. 将滚动偏移量与元素的坐标相加,即可得到元素的新绝对坐标:
代码语言:txt
复制
int absoluteX = x + scrollX.intValue();
int absoluteY = y + scrollY.intValue();

这样,你就可以获得元素在页面中的新绝对坐标了。

关于Selenium Java的更多信息和使用方法,你可以参考腾讯云的产品介绍页面:Selenium Java产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

只会用Selenium爬网页?Appium爬App了解一下

它可以模拟App内部各种操作,点击、滑动、文本输入等,只要我们手工操作动作Appium都可以完成。在前面我们了解过Selenium,它是一个网页端自动化测试工具。...点击左栏屏幕某个元素选中登录按钮,它就会高亮显示。...这时中间栏就显示了当前选中按钮对应源代码,右栏则显示了该元素基本信息,元素id、class、text等,以及可以执行操作,Tap、Send Keys、Clear,如下图所示。 ?...包名和入口类名称可以安装包AndroidManifest.xml文件获取。...查找元素 我们可以使用Selenium通用查找方法来实现元素查找,如下所示: el = driver.find_element_by_id('com.tencent.mm:id/cjk') Selenium

9.4K61
  • 自动化-Appium-常用API(Java版)

    常用API 本章节讲解默认使用Appium Clients为java-client-6.1.0.jar包,对应Selenium使用selenium-server-standalone-3.12.0.jar...但是有一些老方法已经移除(:swipe、tap),则讲解使用Appium Clients为java-client-4.1.2.jar包,对应Selenium使用selenium-server-standalone...driver.getContextHandles(); 13、获取应用字符串 获得应用字符串。 driver.getAppStringMap(); 14、隐藏键盘 隐藏键盘。...startx, int starty, int endx, int endy, int duration) driver.swipe(200, 100, 200, 200, 1000); 22、输入 元素输入...、触控操作(TouchAction) TouchAction原理是将一系列动作放在一个链条,然后将该链条传递给服务器,服务器接收到该链条后,解析各个动作,逐个执行。

    1.8K10

    Android Scroll分析

    Android,将屏幕最左上角顶点作为Android坐标原点,从这个点向右是X轴正方向,从这个点向下是Y轴正方向。 ?...另外在触控事件中使用 getRawX(),getRawY()方法所获得坐标同样是Android坐标坐标。...触摸事件,通过getX()和getY()所获得坐标就是视图坐标坐标。 ---- 触控事件-MotionEvent 触控事件MotionEvent在用户交互,占据着举足轻重位置。...绝对坐标来计算偏移量,并移动View * 使用绝对坐标系,每次执行完ACTION_MOVE逻辑后一定要重新设置初始坐标, * 这样才能准确获取到偏移量 * @param...使用绝对坐标系时,也可以通过scrollTo来实现相同效果 Code 关键自定义View package com.turing.base.android_hero.chapter5_Scroll;

    80820

    基于pythonappium例子

    #模拟点击返回键 driver.press_keycode(4)#其中按钮定义,由Android里KeyEvent.java里定义,所以其它Android按钮也是支持。...由于 Accessibility命令忽略部分元素情况下执行速度会加快,这个关键字能加快测试执行速度。...desired_caps['deviceName'] = 'Galaxy S6 edge' # App绝对路径, 如果不是从安装开始,则不是必填项,可以由下面appPackage,appActivity...界面加载出来之后,加入我们想定位百度一下文本框,那么吧光标移动到上面点击一下即可,下图框出部分为我们需要信息: ?...通过这个信息我们知道,对于这个包,上方desired_caps字典appPackage值应填写为 com.baidu.search appActivity获取: 先让百度在手机运行起来,然后cmd

    2.2K30

    Appium移动端自动化测试--元素操作与触摸动作【移动端自动化测试教程奉上】

    之前陆续介绍了移动端测试相关知识,今天介绍下元素定位之后操作与触摸动作,学习计划因为各种原因,搁置了很久,接下来继续之前计划,APP和API接口测试。...xx)输入框内输入内容 driver.find_element_by_id("com.wuba.zhuanzhuan:id/ij").send_keys("test content") 4.text 获得元素.../点击 Double Tap 触摸屏上双击 Move To 手指在屏幕上移动/拖动 Long Tap 触摸屏上长按进行操作 Scroll 触摸屏上滚动 Multi Touch Perform 链式操作...,不建议直接输入固定绝对坐标值,每款尺寸类型手机不一样。...如下Java代码,获取到屏幕高和宽,再根据高和宽来确定滑动起始位置和结束位置。

    1.3K20

    腾讯出品小程序自动化测试框架【Minium】系列(三)元素定位详解

    image.png 使用xpath语法定位,示例代码如下: # 绝对定位 self.page.get_element("/page/scroll-view/view/view/view[2]/view/...SeleniumCSS 、XPATH定位方式,参考学习CSS定位入门、XPATH定位入门这两篇。...例如小程序页面wxmlmytest 、test2、 test22 image.png 定位 test2 标签下 text 元素 示例代码如下: # 没有元素属性,可以文本定位一试 self.page.get_element...: 不建议使用基础标签view、text方式定位元素,有时会因为dom加载不出来找不到元素,源码参数max_timeout=0,有需要可自己指定超时时间。...小程序发版频繁不建议使用绝对定位,使用有一定标识性或属性结合定位,可考虑选择器定位 若元素没有属性,则可考虑XPath,或标签+文本定位 自定义组件定位,可以考虑跨自定义组件后代选择器或逐层定位元素方法定位

    1.2K10

    Selenium面试题

    26、如何在Selenium WebDriver启动不同浏览器? 27、请编写代码片段以WebDriver启动Chrome浏览器?...31、WebDriver刷新网页有哪些方法? 32、编写代码片段以浏览器历史记录前后导航? 33、怎样才能得到一个网页元素文本? 34、如何在下拉列表中选择值?...它优点是什么? 40、如何在WebDriver截取屏幕截图? 41、如何使用Selenium文本框输入文本? 42、怎么知道一个元素是否显示屏幕上?...Selenium 命令,也称为“Selenese”,是 Selenium 中用于运行测试一组命令。例如命令——打开(URL);指定浏览器启动所需 URL,它接受相对和绝对 URL。...一系列 Selenium 命令 (Selenese) 一起称为测试脚本。 12、Selenium定位Web元素有哪些方法? Selenium ,网络元素定位器帮助下识别和定位

    8.5K11

    自动化测试工具-Helium

    2、简介 Helium 是用于 Web 自动化最佳 Python 库。它基于 Selenium-python,为您提供更简单 API。氦名字来源于它是一种比硒更轻化学元素。... Selenium ,需要使用 HTML ID、XPath 和 CSS 选择器来识别网页元素,而 Helium 可以通过用户可见标签来引用元素,因此,Helium 脚本通常比类似的 Selenium...4、隐式等待:默认情况下,如果您尝试单击带有 Selenium 元素并且该元素尚未出现在页面上,则您脚本将失败。默认情况下,Helium 最多等待 10 秒以使元素出现。...依赖 Selenium 对应版本为 3.141.0。 4、第一个脚本 打开命令行,进入 Python 3 环境,之后,依次输入命令: 打开 Chrome 浏览器,跳转到作者博客页面。...=100) 13、将页面向右滚动给定像素数 scroll_right(num_pixels=100) 14、将页面向左滚动给定像素数 scroll_left(num_pixels=100) 15、将鼠标光标悬停在给定元素或点上

    2.6K10

    达观金克:RPA界面元素智能自适应定位与操控技术

    非GUI自动化技术有:绝对坐标定位、图像匹配定位、基于消息操作、模拟键鼠操作等。...下面列举几种常用自动化技术并给出优缺点分析。01 绝对坐标定位绝对坐标,是指屏幕中固定坐标位置,当界面元素总是处于屏幕中固定坐标位置时,就可以使用绝对坐标来进行定位。...02 图像匹配定位图像匹配,待匹配图像寻找与目标图像相似性高单个或多个目标,并获取目标的坐标位置。...图像匹配可以和绝对坐标定位相结合,先使用绝对坐标定位,再用图像匹配做校验;也可以先划定屏幕某个区域,在此区域内进行图像匹配,以达到提高准确率、加速匹配过程目的。...08 JABJAB(Java Access Bridge)是一项Microsoft Windows动态链接库(DLL)公开Java Accessibility API技术,使实现Java Accessibility

    1.3K10

    25个经典Selenium自动化面试题,赶紧收藏

    例如Apache PIO插件 (11)selenium是否可以向页面发送鼠标滚轮操作? 不能。 (12)如何在webdriver调用应用程序?...第一种:通过子元素定位父元素selenium提供了parent方法,但是只能定位到父元素,却不能获取元素属性,也不能操作。 第二种:通过xpath语法直接定位。 ....配置testNG实现多线程,在编写测试用例时,一定要实现松耦合,服务器允许情况下尽量设置多线程运行,提高执行速度。 (22)selenium自动化时,平时遇到过哪些问题?...如何解决? 比如动态id 、有iframe情况、没加等待等因素 (23)selenium隐藏元素定位,你该如何做?...js和selenium不同,只有页面上有的元素(dom里面的)都能正常操作。 (24)上传图片几种方式?

    2.5K30

    自动化测试最新面试题和答案

    Selenium 2.0或Selenium Webdriver,2011年推出,并在Selenium功能引入了一系列重大改进。这些API完全取代了服务器组件,并与目标浏览器本地交互。...// 简单启动Selenium RC方法是 java -jar selenium-server.jar // 浏览器运行一套Selenese脚本 java -jar selenium-server.jar...问题10:如何在页面加载成功后验证元素存在? 它可以通过下面的代码行来实现。...什么时候应该在Selenium中使用XPath? XPath是一种HTML / XML文档定位方法,可用于识别网页元素。...假如一个文本框是一个Ajax控件,当我们输入一些文本时,它会显示自动建议值。 处理这样控件,需要在文本框输入值之后,捕获字符串所有建议值;然后,分割字符串,取值就好了。

    5.8K20

    Java自动化测试(Android app界面元素 33)

    定位 ActivityName & PackageName PackageName「包名」 应用唯一身份标示,系统通过包名识别不同应用,两个相同包名应用在安装时会提示覆盖 ActivityName...查找当前Activity 启动入口appActivity和Activity区别: appActivityApp是唯一,它作用是用来启动app $ aapt dump badging D:\apk...\base.apk | find "launchable-activity" App页面布局 布局类型 框架布局 所有控件都被放置左上区域 下一个子控件会重叠覆盖上一个控件 线性布局 控件排序方式...:垂直/水平 绝对布局 采用坐标方式定位控件 左上角(0,0) 往右x+ 往下y+ 相对布局 根据参照物位置,来确定控件位置 表格布局 通过表格行列布局控件位置 元素定位 打开uiautomatorviewer...当视图显示给用户,应用程序显示为浮动。和Dialog不一样是,它永远不会获得焦点,无法被点击。

    1.2K10
    领券