我们有一个使用 Selenium 测试框架的应用程序。该应用程序在 Windows Server 2012 上运行,并通过 Windows 任务计划程序定期运行。我通过远程桌面连接到服务器。
当我在计划任务设置选项中设置“无论用户是否登录时运行”时都会出现问题。我的应用程序开始使用此 javascript 代码正常运行,但随后立即以错误异常结束 - 它在下面的行中标记。如果我正常启动应用程序,一切正常。不幸的是,我需要制作一个即使没有人登录也可以运行的应用程序。没有人已经遇到过这个问题吗?
这是我的代码:
public Bitmap MakeBitmap(Uri url)
{
driver = MakeFirefoxDriver();
driver.Navigate().GoToUrl(url.AbsoluteUri);
// In this command, an exception occurs.
driver.ExecuteScript("document.body.style.overflow = 'hidden'")
Thread.Sleep(TimeSpan.FromSeconds(SleepTime));
var screenshot = driver.GetScreenshot();
return new Bitmap(Image.FromStream(new MemoryStream(screenshot.AsByteArray)));
}
private FirefoxDriver MakeFirefoxDriver()
{
var profile = new FirefoxProfile { EnableNativeEvents = true };
var capabilityValue = new List<string> { "-width", "500", "-height", "340" };
var capabilities = DesiredCapabilities.Firefox();
capabilities.SetCapability("initial", capabilityValue);
capabilities.SetCapability(FirefoxDriver.ProfileCapabilityName, profile);
return new FirefoxDriver(capabilities);
}
异常如下所示:
Exception log: No response from server for url http://localhost:7062/hub/session/......
StackTrace: at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest
request) at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String
driverCommandToExecute, Dictionary`2 parameters) at ...