开始使用 Selenium Chrome WebDriver 时,Chrome 上的击键“5”错误

Wrong keystroke "5" on Chrome when started using Selenium Chrome WebDriver

提问人:Mastarius 提问时间:10/19/2023 最后编辑:Mastarius 更新时间:10/19/2023 访问量:14

问:

我正在使用 Selenium 执行一些自动化测试,我发现当击键“5”被发送到 Chrome 时,它将充当“退格”,并删除输入的最后一个字符而不是插入数字 5。

只有当 Chrome 由自动化软件控制时,问题才会出现,而不管输入是由 Selenium 发送还是手动写入。一旦 Chrome 实例打开,即使手动按下数字 5 也会充当退格键。相反,如果我在同一操作系统上手动启动相同版本的 Chrome,击键“5”将按预期工作。

我使用的是 Chrome 118,但我也在 Chrome 97 上测试了它,结果类似。操作系统是装有 Ubuntu Linux 22 的 Azure 实例。在 Chrome 的自动实例中,除数字 5 外,所有其他击键或符号都按预期工作。该问题与页面无关,因为我正在测试的网站和 Google 页面都显示相同的行为

Selenium 的推出具有以下参数

ChromeOptions options = new ChromeOptions();    
options.addArguments("--no-sandbox","--remote-allow-origins=*");
driver = new ChromeDriver(options);

我还尝试添加参数以指定键盘映射,而不会产生不同的结果。

options.addArguments("--lang=en-GB");

当我按数字 5 时,会记录这些事件(右侧是 WebDriver 版本,而右侧是手动启动的 Chrome 实例:

Chrome WebDriver bug

在 UI 事件中,两者都将击键显示为 Backspace,尽管在手动启动的实例上,它实际上键入了一个数字 5。相反,在另一个版本中,它只键入 Backspace。同样,当从小键盘输入数字 5 时,我从右侧得到一个数字 5,在左侧按键 F11。其他所有键似乎都在正常工作。

谷歌-chrome selenium-webdriver selenium-chromedriver

评论


答: 暂无答案