1

更新到最新的 chrome 版本 91.0.4472.77 后获取返回 null 的属性值。在更新之前它工作正常

   selector.getAttribute('value')  => returning null

有什么替代方案或解决方案吗?

4

2 回答 2

0

以下解决方案对我有用。我们为返回属性编写了一个函数。在里面我们保留了 return browser.executeScript('return arguments[0].value', elem);

如果属性是 DOM 的一部分,getAttribute 将继续工作。

于 2021-06-21T06:52:50.923 回答
0

91.0.4472.114我找到了一个临时解决方法,它只适用于 Mac上的 chrome

这里描述的问题实际上是 chromedriver https://bugs.chromium.org/p/chromium/issues/detail?id=1205107中的一个错误,所以它不仅仅是量角器问题

在开发过程中,您可以使用 chromedriver version 90。奇迹般有效。可用的最新版本在这里https://chromedriver.storage.googleapis.com/LATEST_RELEASE_90.0.4430

您可以通过运行此命令来降级 chromedriver

webdriver-manager update --gecko=false --versions.chrome 90.0.4430.24

请注意,有时您有 webdriver-manager 的全局、项目本地和 Protractor 特定安装。我给出的命令将全局安装 chromedriver。为了在本地安装,您需要找到 webdriver-manager 的路径并像这样运行命令

node ./node_modules/protractor/node_modules/webdriver-manager update --gecko=false --versions.chrome 90.0.4430.24

你们中的一些人可能需要在sudo模式下运行命令。记在心上

于 2021-06-21T21:50:13.863 回答