SeleniumHQ / selenium-google-code-issue-archive

Archive, please see main selenium repo
https://github.com/seleniumhq/selenium
346 stars 194 forks source link

Getting request timed out error with 2.31.1 version C# binaries,Windows-server-2003 OS machine,firefox version 3.6.28 #5441

Open lukeis opened 8 years ago

lukeis commented 8 years ago

Originally reported on Google Code with ID 5441

Dear all,

We have been using web driver with C#  since year, We execute our scripts on server
machine(Windows server-2003),When i find updates for c# client libraries, I used to
update them in my project and used to run the scripts successfully, But after updating
to 2.31.1 version i cannot continue my execution,and getting the following exception

The HTTP request to the remote WebDriver server for URL http://localhost:7055/hub/session/785f082b-ea47-430b-88bf-338b0f7fe8d0/element/%7Beae70fc1-1500-4a3b-a89a-91c84a6d1558%7D/value
timed out after 60 seconds.

What steps will reproduce the problem?
1.create a web driver project in Visual studio
2.Download the 2.31.1 C3 libraries from Selenium HQ site
3.Add those DLL's in your project as a reference
4.Create a sample project to launch and do some UI actions
5.Run the script

System configuation must be as below :
OS  : Windows Server-2003 (SP-2)
Browser :FireFox version 3.6.28

What is the expected output? What do you see instead?

Selenium version:
OS:
Browser:
Browser version:

Regards
Rajendra Chary.M

Reported by MRajendraC on 2013-04-04 06:05:01

lukeis commented 8 years ago
Don't think FF3 is supported any more, it would be worth you upgrading to a later version
to test the theory out.

Reported by arran.huxtable on 2013-04-04 08:41:11

lukeis commented 8 years ago
Agree...i cannot test this as organization restricted to FF3 version only.

Reported by MRajendraC on 2013-04-16 04:58:06

lukeis commented 8 years ago
Are there any error messages on the Firefox error console?

Reported by barancev on 2013-05-13 14:37:25

lukeis commented 8 years ago

Reported by barancev on 2013-05-13 14:37:34

lukeis commented 8 years ago
I encountered same issue on FF 21.0 and same script works fine on Chrome Version 27.0.1453.110

Selenium webdriver version: 2.33.0
Program language: C#
OS: win7 ent 64bit
Browser: Firefox
Browser version : 21.0
exception as below
------------
OpenQA.Selenium.WebDriverException was unhandled
  Message=The HTTP request to the remote WebDriver server for URL http://localhost:7055/hub/session/901c0820-1311-4f78-8a74

-737160bedfd7/element/%7B9fd0dcdd-ff3b-4283-bd27-fbd6a44d2c85%7D/click timed out after
60 seconds.
  Source=WebDriver
  StackTrace:
       at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request)
       at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute)
       at OpenQA.Selenium.Firefox.Internal.ExtensionConnection.Execute(Command commandToExecute)
       at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,
Dictionary`2 parameters)
       at OpenQA.Selenium.Remote.RemoteWebDriver.InternalExecute(String driverCommandToExecute,
Dictionary`2 parameters)
       at OpenQA.Selenium.Remote.RemoteWebElement.Execute(String commandToExecute,
Dictionary`2 parameters)
       at OpenQA.Selenium.Remote.RemoteWebElement.Click()
       at Centrify.HarnessFramework.Handlers.SeleniumHandlers.Program.Main(String[]
args) in D:\SVNWorkSation

\SeleniumHarness\Program.cs:line 196
       at System.AppDomain._nExecuteAssembly(RuntimeAssembly assembly, String[] args)
       at System.AppDomain.ExecuteAssembly(String assemblyFile, Evidence assemblySecurity,
String[] args)
       at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssembly()
       at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state, 

Boolean ignoreSyncCtx)
       at System.Threading.ExecutionContext.Run(ExecutionContext executionContext,
ContextCallback callback, Object state)
       at System.Threading.ThreadHelper.ThreadStart()
  InnerException: System.Net.WebException
       Message=The operation has timed out
       Source=System
       StackTrace:
            at System.Net.HttpWebRequest.GetResponse()
            at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest
request)
       InnerException: 
-------------------------------

Reported by zhaoguocai51@163.com on 2013-06-20 11:28:15

lukeis commented 8 years ago
I found other guys also met same issue, please refer below link:

http://stackoverflow.com/questions/15268255/selenium-webdriver-throws-timeout-exceptions-sporadically

Reported by zhaoguocai51@163.com on 2013-06-20 11:36:04

lukeis commented 8 years ago
I found other guys also met same issue, please refer below link:

http://stackoverflow.com/questions/15268255/selenium-webdriver-throws-timeout-exceptions-sporadically

Reported by zhaoguocai51@163.com on 2013-06-20 11:37:42

lukeis commented 8 years ago
Try disabling your windows firewall

Reported by jorge.fioranelli on 2013-06-21 01:04:58

lukeis commented 8 years ago
I have disable firewall, issue also existing

Reported by zhaoguocai51@163.com on 2013-06-21 07:47:58

lukeis commented 8 years ago
I started seeing this with Firefox 25.0. Currently using selenium Web Driver 2.35.0.0.
Chrome Version 30.0.1599.101 m works fine. The error is below. Maybe I should upgrade
to latest selenium web driver. First wanted to see if there's any more inf0. Using
C# selenium.

SetUp : OpenQA.Selenium.WebDriverException : The HTTP request to the remote WebDriver
server for URL http://localhost:7055/hub/session/8c957eaf-d788-4fbe-990f-475ffd0873a6/element
timed out after 60 seconds.
  ----> System.Net.WebException : The operation has timed out
TearDown : OpenQA.Selenium.WebDriverException : The HTTP request to the remote WebDriver
server for URL http://localhost:7055/hub/session/8c957eaf-d788-4fbe-990f-475ffd0873a6/element
timed out after 60 seconds. 

Tanks in advance

Reported by lichtenf on 2013-11-06 19:20:24

lukeis commented 8 years ago
Are there any error messages on the Firefox error console? (Ctrl-Shift-J to open it)

Reported by barancev on 2013-11-07 10:34:36

lukeis commented 8 years ago
Barancey,

Unfortunately, the browser goes into "Not Responding" mode when this happens. I have
verified this fail on another machine and a colleague has also verified it in their
machine, so, it seems for real. 

Thanks for the tip on error log in Firefox. FYI: I will be traveling for the next four
days so I won't be able to try any more experiments until I get back.

Reported by lichtenf on 2013-11-07 15:44:12

lukeis commented 8 years ago
I get this same error and the browser locks up. Very annoying as tests fail randomly,
so I am never sure whether this is a bug in my code or this issue until I have looked
through the logs.  

This only occurs sporadically, so it is hard to narrow down. Some things that I have
noticed: -

1. Can happen when calling Click() on the WebElement, but also occurs with IJavaScriptExecutor
ExecuteScript().
2. The browser remains in a locked and unresponsive state until I stop the test and
then the browser comes back to life. 
3. .NET WebDriver: 2.37, FF: 25.0.1

If I find any more info, I will post it. 

Reported by acarlonvsn on 2013-11-19 05:43:49

lukeis commented 8 years ago
The issue is still there.
1. It is no related to browser and version, it happens on any browsers such as IE and
FF etc.
2. And aslo no relationship with any operations. Timed out is becuase driver no response
after loading page, even it's successful on loading, will fail again on finding elements.
Here are some code segment:
                var profile = new InternetExplorerOptions();                profile.IntroduceInstabilityByIgnoringProtectedModeSettings
= true;
                driver = new InternetExplorerDriver(InternetExplorerDriverService.CreateDefaultService(),
profile, TimeSpan.FromSeconds(120));

                driver.Navigate().GoToUrl("http://vacations.uat.sh.ctriptravel.com/around/p1618012s2.html");

Notes: The issue is caused by the url "http://vacations.uat.sh.ctriptravel.com/around/p1618012s2.html".
If we use www.google.com to replace it, the issue will not repro.

Any info if you need, I can post.
Looking forward to your solution.

Reported by pan_fat@live.cn on 2013-11-20 03:28:37

lukeis commented 8 years ago
OK, to add to my previous post: I downloaded the Selenium dotnet WebDriver source and
found where the error is being returned from. For anyone that is interested, it is
in HttpCommandExecutor.CreateResponse(). Basically, no response is received. Which
is not expected, because Firefox is completely unresponsive. I imagine that Firefox
should never lock up, so it is on the Firefox side (Firefox itself or embedded code)
where the real issue is. However, when I close my test Firefox frees up again, so that
implies that it is something that the webdriver is doing to firefox that is putting
it in this state. 

First, I thought I would see if there was a way to unlock Firefox so that my tests
can at least continue without having to kill it. I tried modifying the Selenium WebDriver
code to abort the request when a timeout occurs, but that does not help. Other than
that there is no response object, so nothing to close and the Request cannot be disposed
(because it does not inherit IDisposable). So, I don't know if there is anything can
be achieved easily to unlock Firefox. The real problem occurred earlier on - whatever
put Firefox into this bad state.

I tried breaking Firefox in the debugger when it was locked, but it is a release build
and can't tell much. I will try building a debug version.  

Reported by acarlonvsn on 2013-11-20 22:42:25

lukeis commented 8 years ago
So, I got a debug version of Firefox 25.0 to work and found that the lock-up in Firefox
was when it was writing to stderr. This gave me the clue to change the webdriver code
so that it no longer redirects standard out and error and this solved my problem. It
seems like the WebDriver is blocking the std error in some way. From MSDN:

"Synchronous read operations introduce a dependency between the caller reading from
the StandardError stream and the child process writing to that stream. These dependencies
can cause deadlock conditions..." - more info here: http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.redirectstandarderror(v=vs.110).aspx

For anyone wanting to make the same tweak I did: -

1. Get the Selenium source. Then check out the same code branch that you are using.

2. In FireFoxBinary.cs: =
    i. Wherever you find 'RedirectStandardError = true', change to 'RedirectStandardError
= false'.
    ii. Wherever you find 'RedirectStandardOutput = true', change to 'RedirectStandardOutput
= false'. (for non-Windows, there is also one in Executable.cs) 
    iii. In ConsoleOuput, change 'return this.stream.ReadToEnd()', to 'return ""'
3. Build and replace WebDriver.dll with yours.

Disclaimer: This worked for me, but your issue might be different. As far as I can
tell, this has no adverse effects other than disabling the console output, but there
may be other side effects that I am unaware of. 

I would be interested to know if anyone else finds the same. 

Since I have solved my problem, I will not dig much more into this. If anyone at Selenium
wants more info / logs / tweaks I would be happy to do so. 

Hopefully this will get fixed soon. 

Reported by acarlonvsn on 2013-11-24 22:00:06

lukeis commented 8 years ago
Hi. FF is only supported to version 24 as per http://selenium.googlecode.com/git/rb/CHANGES

Reported by tonywrenn on 2013-11-29 15:52:52

lukeis commented 8 years ago
tonywr: thanks. 

Question: Is the git change history the official place to look to find which version
of firefox is supported by which webdriver version? 

I did actually search for supported versions before diving in and the only page that
I could find was this: http://www.seleniumhq.org/about/platforms.jsp
But that page implies that only up to Firefox 10 is supported, which would not be helpful
as all my user are after this release. Most users are now on 25 which is why I need
to test this release. 

I guess the good news for me is that with a few small tweaks my 200+ tests run well.
Hopefully v25 support is not far off. 

Reported by acarlonvsn on 2013-11-29 21:35:00

lukeis commented 8 years ago
I was able to follow along with acarlon details here and it did seem to fix the issue
for me as well. Tried this with 2.39

I have a setup on ESX that covers XP, vista, 7 and 8.1 - all have this same issue where
Firefox will lock up after a specific number of clicks have been issued. Symptoms are
pretty much the same as acaralons.
Am using NUnit and driving test via console runner. 

Reported by Zechtitus on 2014-02-24 22:12:28

lukeis commented 8 years ago

Reported by barancev on 2014-02-24 22:41:01

lukeis commented 8 years ago
Zechti, see my update here: http://stackoverflow.com/a/20181669/746754 with the heading
"Update 25th Feb 2014". This has been solved in .NET webdriver bindings 2.40. The fix
is the same as my workaround, so if my workaround worked for you, then 2.40 should
as well. 

Reported by acarlonvsn on 2014-02-24 22:52:21

lukeis commented 8 years ago
It seems that does not work well with .NET webdriver bindings 2.40.

Reported by 1018464743@qq.com on 2014-02-25 11:05:46

lukeis commented 8 years ago
Can we catch this exception somehow and if it happens then do some stuff?
Since this fails my scenario randomly I decided to try and catch this exception and
when I see it, report it and mark it as "success" since It clutters my reports to RND.

Have any of you did it?

Reported by yossimi@etoro.com on 2014-05-27 09:42:18

lukeis commented 8 years ago
Can you try to run your test on virtual machine?

Reported by morg125@mail.ru on 2014-07-25 09:26:03

lukeis commented 8 years ago
My selenium code opening FF browser, but not opening the given URL in code. But same
code work is other machine.

My Config is 
Firefox: 35.0.1
Webdriver version: 2.44.0.0

I m get below time out error

Result Message: Initialization method UnitTestProject1.LoginTests.Init threw exception.
OpenQA.Selenium.WebDriverException: OpenQA.Selenium.WebDriverException: The HTTP request
to the remote WebDriver server for URL http://localhost:7055/hub/session timed out
after 60 seconds. ---> System.Net.WebException: The operation has timed out.
Result StackTrace:  
at System.Net.HttpWebRequest.GetResponse()
   at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request)
 --- End of inner exception stack trace ---
    at OpenQA.Selenium.Remote.HttpCommandExecutor.CreateResponse(WebRequest request)
   at OpenQA.Selenium.Remote.HttpCommandExecutor.Execute(Command commandToExecute)
   at OpenQA.Selenium.Firefox.FirefoxDriverCommandExecutor.Execute(Command commandToExecute)
   at OpenQA.Selenium.Remote.RemoteWebDriver.Execute(String driverCommandToExecute,
Dictionary`2 parameters)
   at OpenQA.Selenium.Remote.RemoteWebDriver.StartSession(ICapabilities desiredCapabilities)
   at OpenQA.Selenium.Remote.RemoteWebDriver..ctor(ICommandExecutor commandExecutor,
ICapabilities desiredCapabilities)
   at OpenQA.Selenium.Firefox.FirefoxDriver..ctor(FirefoxBinary binary, FirefoxProfile
profile)
   at OpenQA.Selenium.Firefox.FirefoxDriver..ctor()
   at ClassLibrary1.Driver.Initialize() in c:\Users\rudhrakumar\Documents\Visual Studio
2012\Projects\ClassLibrary1\ClassLibrary1\Driver.cs:line 17
   at UnitTestProject1.LoginTests.Init() in c:\Users\rudhrakumar\Documents\Visual Studio
2012\Projects\ClassLibrary1\UnitTestProject1\LoginTests.cs:line 13

Reported by tomhauk001 on 2015-02-04 11:43:46

lukeis commented 8 years ago

Reported by luke.semerau on 2015-09-17 17:45:11