0

我将 selenium Hub 作为集群 Kubernetes 上的一项服务,我开始使用 selenium side runner 进行远程测试。不幸的是,当我尝试使用终端(使用 Ubuntu)运行测试时,出现以下错误:

在此处输入图像描述

UnsupportedOperationError:在桥接模式下不支持相对于视口的指针移动

在 Actions.perform 的 executeLegacy (../../../../../usr/lib/node_modules/selenium-side-runner/node_modules/selenium-webdriver/lib/input.js:1129:17) (../../../../../usr/lib/node_modules/selenium-side-runner/node_modules/selenium-webdriver/lib/input.js:971:16

如果我尝试从 selenium ide 开始测试,一切正常。错误取决于什么?

你能帮助我吗?先感谢您。

此致

4

2 回答 2

0

这可能是由于硒版本。我遇到了同样的问题并将 selenium 版本升级到 4.0.X。

于 2020-02-27T12:41:07.257 回答
0

此错误消息...

  UnsupportedOperationError: pointer movements relative to viewport are not supported in bridge mode
    at executeLegacy (../../../../../usr/lib/node_modules/selenium-side-runner/node_modules/selenium-webdriver/lib/input.js:1129:17)
    at Actions.perform (../../../../../usr/lib/node_modules/selenium-side-runner/node_modules/selenium-webdriver/lib/input.js:971:16

...意味着在桥模式下的画布中工作时,不支持相对于视口发生的指针移动。

根据集体诉讼第 6 条中的文档:

对于 W3C 操作,相对于WebElement的移动偏移量被解释为相对于视口中元素的第一个客户端矩形的中心。对于旧版操作,元素偏移量是相对于元素边界客户端 rect的左上角的。在桥接模式下将动作转换为传统协议时,必须插入一个额外的命令来将移动偏移从一个参考帧转换到另一个参考帧。这个额外的命令会导致整体延迟问题。

您可以在是否可以以编程方式确定是否使用 W3C 操作命令中找到详细讨论?

这是Selenium的一个已知问题,正在通过Not correct move pointer to the position in the element in bridge mode 进行跟踪。


ChromeDriver - 实现操作 API

当前发布的ChromeDriver 76.0.3809.12包含 Actions API 的实现。

----------ChromeDriver 76.0.3809.12 (2019-06-07)----------
Supports Chrome version 76
Resolved issue 1897: Implement Actions API [Pri-1]

链接到问题 1897:实施操作 API

切换到ChromeDriver 76.0将解决您的问题。

于 2019-06-11T14:58:23.347 回答