我一直在玩Selenium(chromedriver,Java)。我对看到Selenium以类似于人的方式移动鼠标所需要的东西很感兴趣。这导致我进入Selenium Actions课。
Selenium Actions执行速度有多快?我认为了解是否要以特定速度移动鼠标很重要。我尝试执行以下代码:
Actions builder = new Actions(driver);
Action action = builder.moveByOffset(4,0).build();
LocalTime before = LocalTime.now();
for (int i = 0; i < 100; i++) {
action.perform();
}
LocalTime after = LocalTime.now();
System.out.println(Duration.between(before, after).toMillis());
如果我在Chrome“开发人员工具”面板打开的情况下运行上述代码,则它将在300毫秒内运行。关闭“开发人员工具”后,它的运行时间约为1700毫秒。
答案 0 :(得分:0)
ChromeDriver不支持W3C WebDriver协议。 JSON-wire协议不允许设置鼠标移动的持续时间(因此留作远程端的实现细节)。
我将切换GeckoDriver,因为它支持W3C WebDriver协议。