gpt4 book ai didi

c# - Selenium 错误 : No response from server for url http://localhost:7055

转载 作者:可可西里 更新时间:2023-11-01 07:47:57 24 4
gpt4 key购买 nike

我正在使用 Selenium、C#、NUnit 编写测试,有时我会遇到以下错误:-

OpenQA.Selenium.WebDriverException : No response from server for urlhttр://lоcalhost:7055/hub/session/8dd13f5c-7ca6-4aa6-babc-f0ff6d940f0a/element

这是堆栈跟踪:

OpenQA.Selenium.WebDriverException : No response from server for urlhttр://localhost:7055/hub/session/8dd13f5c-7ca6-4aa6-babc-f0ff6d940f0a/elementatOpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequestrequest) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\HttpCommandExecutor.cs:line115 at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(CommandcommandToExecute) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\HttpCommandExecutor.cs:line96 atOpenQA.Selenium.Firefox.Internal.ExtensionConnection.Execute(CommandcommandToExecute) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Firefox\Internal\ExtensionConnection.cs:line128 at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(StringdriverCommandToExecute, Dictionary`2 parameters) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs:line795 at OpenQA.Selenium.Remote.RemoteWebDriver.FindElement(Stringmechanism, String value) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs:line836 at OpenQA.Selenium.Remote.RemoteWebDriver.FindElementById(Stringid) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs:line431 at OpenQA.Selenium.By.<>c__DisplayClass2.b__0(ISearchContextcontext) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\By.cs:line 102 atOpenQA.Selenium.By.FindElement(ISearchContext context) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\By.cs:line 272 atOpenQA.Selenium.Remote.RemoteWebDriver.FindElement(By by) inc:\Projects\WebDriver\trunk\dotnet\src\WebDriver\Remote\RemoteWebDriver.cs:line289 at

.####.##.#####.#########.#####.ShareServicesTest.CreateShareWidget()

出现该错误的代码:

Driver.SwitchTo().Frame(frameElement);    
var wait = new WebDriverWait(parentContextable.Context.Driver, Timeout);
IWebElement element = wait.Until(d => Driver.FindElement(By.TagName(Tags.Body))); // error in this line

我发现这个错误只能在这行 Selenium 实现代码中抛出:

private static Response CreateResponse(WebRequest request)
{
Response commandResponse = new Response();

HttpWebResponse webResponse = null;
try
{
webResponse = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
webResponse = (HttpWebResponse)ex.Response;
}

if (webResponse == null)
{
throw new WebDriverException("No response from server for url " + request.RequestUri.AbsoluteUri);
}
else
{ ...

也许有人知道为什么 request.GetResponse() 返回 null,或者如果失败为什么 ex.Response 也为 null?

(09.09.2012) 对不起,也许我没有提供所有信息。我正在使用 FireFox 驱动程序、Win7、Selenium 2.25.1。我的测试只是有时会失败。 Debug模式下的测试失败频率低于 Release模式。

Here我找到了发生这种情况的可能原因。如果我写这样的代码:

Driver.SwitchTo().Frame(frameElement);    
var wait = new WebDriverWait(parentContextable.Context.Driver, Timeout);
Tread.Sleep(250);
IWebElement element = wait.Until(d => Driver.FindElement(By.TagName(Tags.Body)));

测试运行正常。但是 Thread.Sleep 是一个糟糕的解决方案。也许有人可以找到另一个更好的解决方案。

最佳答案

关于c# - Selenium 错误 : No response from server for url http://localhost:7055,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12321991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com