我有一个batch file,它启动了使用IEDriverServer的Selenium脚本(用Java编写)。 当我从命令行运行该batch file时,该脚本按预期工作。 但是,当我使用Windows任务计划程序运行完全相同的batch file时,脚本在WebDriverWait until语句中超时:
(new WebDriverWait(driver, JAVASCRIPT_TIMEOUT_SECONDS)).until(new ExpectedCondition<Boolean>() { public Boolean apply(WebDriver d) { return d.getTitle().equals(BROWSE_PAGE_TITLE); } });
我发现这个堆栈溢出后:
Selenium在Windows Server上按计划运行
这表明将作业设置为“运行用户是否login”可以解决问题,但我已经有了这样的工作。
我已经尝试了IEDriverServer的32位和64位版本。
值得一提的是sendKeys方法在使用任务计划程序时每次击键约需5秒钟,而不是直接运行batch file时。
我如何让Selenium像使用命令行一样使用Task Scheduler来执行相同的操作?
附加信息 :
下面是一个建议,创建一个可执行的jar文件(右键单击你的项目并导出为可执行jar),然后尝试直接运行。 我从来没有面对任何性能问题。
另外,请确保您的网络连接稳定,您可以在任务运行之前使用“网络”选项卡进行这些设置。
这里是如何实现这个简短的描述:
保存任务,右键单击任务并运行它来检查它是否正常工作。
希望这个对你有帮助 :)