[Selenium 2.0] FirefoxDriver DEFAULT_PORT=7055

68 views
Skip to first unread message

mcbain

unread,
Nov 3, 2010, 11:28:58 AM11/3/10
to Selenium Users
Hi experts,

We want to use S2 for parallel integration tests.
Can someone explain why there is this fixed port 7055-1 which is
locked in the FirefoxDriver.connectTo method but later in the
NewProfileExtensionConnection.start method a free port dynamicly
searched.

port = determineNextFreePort(DEFAULT_PORT);

protected ExtensionConnection connectTo(FirefoxBinary binary,
FirefoxProfile profile,
String host) {
Lock lock = new SocketLock(DEFAULT_PORT - 1);
try {
FirefoxBinary bin = binary == null ? new FirefoxBinary() :
binary;

return new NewProfileExtensionConnection(lock, bin, profile,
host);
} catch (Exception e) {
throw new WebDriverException(e);
} finally {
lock.unlock();
}
}

Wh

krosenvold

unread,
Nov 3, 2010, 12:12:18 PM11/3/10
to Selenium Users
There is one fixed port that is used for "locking", and whoever holds
this port
can allocate the next free port. This works well for parallel
execution.

Further details at

http://code.google.com/p/selenium/wiki/FirefoxDriverInternals


Kristian

mcbain

unread,
Nov 3, 2010, 12:30:36 PM11/3/10
to Selenium Users
OK, that makes sense.
Even with pure sequential test-order the first tests always fails on
our Linux-build agents.
The problem is following.

Maybe the firefox which is staterd needs more time to come up?!

org.openqa.selenium.WebDriverException:
org.apache.http.conn.HttpHostConnectException: Connection to
http://localhost:7055 refused
System info: os.name: 'Linux', os.arch: 'amd64', os.version:
'2.6.18-128.1.1.el5xen', java.version: '1.6.0_16'
Driver info: driver.version: remote
at
org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:
341)
at
org.openqa.selenium.firefox.FirefoxDriver.execute(FirefoxDriver.java:
234)
at
org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:
86)
at
org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:
73)
at
org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:
141)
at
org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:
101)
at
de.is24.test.core.BrowserFactory.startNewBrowser(BrowserFactory.java:
54)
at de.is24.test.core.BrowserFactory.makeObject(BrowserFactory.java:
30)
at
org.apache.commons.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:
1158)
at de.is24.test.core.BaseTestCase.startBrowser(BaseTestCase.java:
37)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.junit.runners.model.FrameworkMethod
$1.runReflectiveCall(FrameworkMethod.java:44)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:
15)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:
41)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:
27)
at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:
31)
at
org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:
79)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:
71)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:
49)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:
191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:
184)
at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:
59)
at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:
120)
at
org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:
103)
at org.apache.maven.surefire.Surefire.run(Surefire.java:169)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:
350)
at
org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:
1021)
Caused by: org.apache.http.conn.HttpHostConnectException: Connection
to http://localhost:7055 refused
at
org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:
159)
at
org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:
149)
at
org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:
108)
at
org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:
415)
at
org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:
641)
at
org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:
211)
at
org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.execute(NewProfileExtensionConnection.java:
125)
at org.openqa.selenium.firefox.FirefoxDriver
$LazyCommandExecutor.execute(FirefoxDriver.java:341)
at
org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:
328)
... 37 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:
195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:525)
at
org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:
123)
at
org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:
133)
... 45 more

gadhet

unread,
Nov 15, 2010, 8:30:08 AM11/15/10
to Selenium Users
Hi all,

I have the same problem as mcbain mentioned and I can't run my tests.
Did someone know some information to help?

It's very important because we can't go further with our work.

We are using Selenium 2.0a7.

Thanks for help
Reply all
Reply to author
Forward
Message has been deleted
0 new messages