【发布时间】:2014-09-15 05:14:25
【问题描述】:
我有一个启动我的 Selenium 脚本(用 Java 编写)的批处理文件,它使用 IEDriverServer。当我从命令行运行该批处理文件时,脚本按预期工作。但是,当我使用 Windows 任务计划程序运行完全相同的批处理文件时,脚本在 WebDriverWait until 语句期间超时:
(new WebDriverWait(driver, JAVASCRIPT_TIMEOUT_SECONDS)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver d) {
return d.getTitle().equals(BROWSE_PAGE_TITLE);
}
});
我发现了这篇 Stack Overflow 帖子:
Selenium runs as scheduled task on Windows Server
这表明将作业设置为“无论用户是否登录都运行”可以解决问题,但我已经以这种方式设置了作业。
我已经尝试过 32 位和 64 位版本的 IEDriverServer。
还值得注意的是,使用任务计划程序时,sendKeys 方法每次击键大约需要 5 秒,但在直接运行批处理文件时不会。
如何让 Selenium 在使用任务计划程序时以与从命令行运行时相同的方式运行?
其他信息:
- Windows Server 2008 R2
- IEDriverServer 2.42.0 版
- Selenium Java 版本 2.42.2
【问题讨论】:
标签: java windows selenium-webdriver scheduled-tasks