Bug 19859 [JUnit] Socket connection error
I'll provide more specifics as I come across them. Sorry for the sparse detail. Sometimes (but not always) when I Run.. or Debug.. a JUnit launcher, I get the following exception: Console [<disconnected> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner at localHost:9613] Could not connect to: : 6293 java.net.ConnectException: Connection refused at java.net.PlainSocketImpl.socketConnect(Native Method) at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:295) at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:161) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:148) at java.net.Socket.connect(Socket.java:425) at java.net.Socket.connect(Socket.java:375) at java.net.Socket.<init>(Socket.java:290) at java.net.Socket.<init>(Socket.java:118) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.connect(RemoteTestRunner.java:440) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:210) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:151) Could be related to one of the following: **I'm running a dual head linux systems via xinerama, but other apps have not had any difficulty. **I'm suspicious that the problem occurs when I have more than one perspective open in different windows, OR when using Debug... would cause a new perspective to be started.
org.eclipse.jdt.junit/src/org/eclipse/jdt/internal/junit/runner/RemoteTestRunner.java
for (int i= 0; i < suites.length; i++) {
			Test test= getTest(testClassNames[i]);
			suites[i]= test;
		}
		
				
		int count= countTests(suites);
		notifyTestRunStarted(count);
		
		if (count == 0) {
			notifyTestRunEnded(0);
			return;
		}
		
		long startTime= System.currentTimeMillis();
		if (fDebugMode)
			System.out.println("start send tree"); 
		sendTree(suites[0]);
		if (fDebugMode)
			System.out.println("done send tree"+(System.currentTimeMillis()-startTime)); 
		long testStartTime= System.currentTimeMillis();
		for (int i= 0; i < suites.length; i++) {
			suites[i].run(fTestResult);
		}
		
		if (fTestResult == null || fTestResult.shouldStop())
			notifyTestRunStopped(System.currentTimeMillis() - testStartTime);
		else
			notifyTestRunEnded(System.currentTimeMillis() - testStartTime);
	}