I am not sure if this is related to our changes in 0.7.0. We have changed
the setup and teardown methods to use
@BeforeTest and @AfterTest annotations for TelluriumTestNGTestCase so that
the embedded selenium server
will only be started once for multiple tests. Maybe the TestNG ant task does
not handle that correctly?

If you change your file to use TelluriumJUnitTestCase, do you have the same
problem?

The thread you mentioned was resolved because the ip in the configuration
file was not correct.

Thanks,

Jian


On Thu, Jun 10, 2010 at 2:06 PM, super fan 911 <[email protected]>wrote:

> First, I am not an Ant expert.  I am trying to create an ant task to
> run my tests.  Below is my ant task,
>
> <target name="run-test-testng" depends="compile-test">
>   <echo message="Running testng test..." />
>   <testng classpathref="run.classpath" groups="${testng.groups}"
> outputDir="${dir.build.report}" haltOnFailure="true" verbose="2"
> suiteName="${testng.suite.name}" testName="${testng.test.name}">
>          <classfileset dir="${dir.build.test}" includes="**/
> SampleTest.class" />
>          <classfileset dir="${dir.build.test}" includes="**/
> Sample2Test.class" />
>   </testng>
> </target>
>
> Here are my sample tests,
>
> public class SampleTest extends TelluriumTestNGTestCase {
>
>        @Test(enabled=true, groups=["regression"])
>        public void testXYZ() {
>                openUrl("http://www.yahoo.com";);
>                sleep 3000
>                System.out.println("hello world");
>        }
> }
>
>
> public class Sample2Test extends TelluriumTestNGTestCase {
>
>        @Test(enabled=true, groups=["regression"])
>        public void testXYZ() {
>                openUrl("http://www.google.com";);
>                sleep 3000
>                System.out.println("hello world 2");
>        }
> }
>
> I have set "runInternally = true" in Tellurium config file.
>
> Here is my stack trace,
>
> run-test-testng:
>     [echo] Running testng test...
>   [testng] [Parser] Running:
>   [testng]   Regression Testing
>   [testng]
>   [testng] Parse configuration file: TelluriumConfig.groovy from
> project root directory
>   [testng] Configure UI Object Builders using configuration
>   [testng] Configure widget modules using configuration
>   [testng] Configure event handler using configuration
>   [testng] Configure data accessor using configuration
>   [testng] Configure dispatcher using configuration
>   [testng] Configure Embedded Selenium Server using configuration
>   [testng] Warning: No user-extensions.js
>   [testng] Configure Selenium Client using configuration
>   [testng] Configure Embedded Selenium Server using configuration
>   [testng] Warning: No user-extensions.js
>   [testng] java.net.BindException: Selenium is already running on
> port 4444. Or some other service is.
>   [testng]     at
> org.openqa.selenium.server.SeleniumServer.start(SeleniumServer.java:
> 378)
>   [testng]     at
> org.openqa.selenium.server.SeleniumServer.boot(SeleniumServer.java:
> 224)
>   [testng]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>   [testng]     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39)
>   [testng]     at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
> 25)
>   [testng]     at java.lang.reflect.Method.invoke(Method.java:597)
>   [testng]     at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite
> $PojoCachedMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:
> 229)
>   [testng]     at
>
> org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:
> 52)
>   [testng]     at
>
> org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:
> 121)
>   [testng]     at
>
> org.telluriumsource.server.SeleniumServerDaemon.run(SeleniumServerDaemon.groovy:
> 142)
>   [testng]     at org.telluriumsource.server.SeleniumServerDaemon
> $run.call(Unknown Source)
>   [testng]     at
>
> org.telluriumsource.server.EmbeddedSeleniumServer.setUpSeleniumServer(EmbeddedSeleniumServer.groovy:
> 63)
>   [testng]     at org.telluriumsource.server.EmbeddedSeleniumServer
> $setUpSeleniumServer.callCurrent(Unknown Source)
>   [testng]     at
>
> org.telluriumsource.server.EmbeddedSeleniumServer.runSeleniumServer(EmbeddedSeleniumServer.groovy:
> 74)
>   [testng]     at org.telluriumsource.server.EmbeddedSeleniumServer
> $runSeleniumServer.call(Unknown Source)
>   [testng]     at
>
> org.telluriumsource.framework.TelluriumFramework.start(TelluriumFramework.groovy:
> 145)
>   [testng]     at org.telluriumsource.framework.TelluriumFramework
> $start.callCurrent(Unknown Source)
>   [testng]     at
>
> org.telluriumsource.framework.TelluriumFramework.start(TelluriumFramework.groovy:
> 154)
>   [testng]     at
>
> org.telluriumsource.test.java.TelluriumTestNGTestCase.setUpForTest(TelluriumTestNGTestCase.java:
> 23)
>   [testng]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
>   [testng]     at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> 39)
>   [testng]     at
>
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:
> 25)
>   [testng]     at java.lang.reflect.Method.invoke(Method.java:597)
>   [testng]     at
> org.testng.internal.MethodHelper.invokeMethod(MethodHelper.java:644)
>   [testng]     at
> org.testng.internal.Invoker.invokeConfigurationMethod(Invoker.java:
> 443)
>   [testng]     at
> org.testng.internal.Invoker.invokeConfigurations(Invoker.java:160)
>   [testng]     at
> org.testng.internal.Invoker.invokeConfigurations(Invoker.java:90)
>   [testng]     at org.testng.TestRunner.beforeRun(TestRunner.java:522)
>   [testng]     at org.testng.TestRunner.run(TestRunner.java:490)
>   [testng]     at org.testng.SuiteRunner.runTest(SuiteRunner.java:329)
>   [testng]     at
> org.testng.SuiteRunner.runSequentially(SuiteRunner.java:324)
>   [testng]     at org.testng.SuiteRunner.privateRun(SuiteRunner.java:
> 296)
>   [testng]     at org.testng.SuiteRunner.run(SuiteRunner.java:201)
>   [testng]     at org.testng.TestNG.createAndRunSuiteRunners(TestNG.java:
> 915)
>   [testng]     at org.testng.TestNG.runSuitesLocally(TestNG.java:879)
>   [testng]     at org.testng.TestNG.run(TestNG.java:787)
>   [testng]     at org.testng.TestNG.privateMain(TestNG.java:952)
>   [testng]     at org.testng.TestNG.main(TestNG.java:925)
>   [testng] Configure Selenium Client using configuration
>   [testng] hello world 2
>   [testng] hello world
>   [testng] PASSED: testXYZ
>   [testng] PASSED: testXYZ
>   [testng]
>   [testng] ===============================================
>   [testng]     Functional
>   [testng]     Tests run: 2, Failures: 0, Skips: 0
>   [testng] ===============================================
>   [testng]
>   [testng]
>   [testng] ===============================================
>   [testng] Module Testing
>   [testng] Total tests run: 2, Failures: 0, Skips: 0
>   [testng] ===============================================
>   [testng]
>   [testng] [org.testng.internal.PoolService] Shutting down
> poolservice org.testng.internal.poolserv...@617e53c9 terminated:false
>
>
> First, if I only have one class file, everything works fine.  The
> problem only arise when I have 2+ test classes in the ant task.
>
> This is how I understood how things worked:
>
> - runInternally = true  will start the embedded selenium server for
> you
>
> - In TelluriumTestNGTestCase class, there is the annotated
> setUpForTest an tearDownForTest methods which will start the Tellurium
> server (embedded selenium server) and connects the test to it, and
> stop during tear down.
>
> - Looking at the execution window, I did see 2 separate browser
> sessions popup and go down which leads me to think that the setup and
> teardown methods did get call.  What i don't understand is where else
> is an attempt to start the selenium server happening...
>
>
> I saw this thread, but didn't find a solution there.
>
>
> http://groups.google.com/group/tellurium-users/browse_thread/thread/d265147501a92f12/7ff565bf7c85db5b?lnk=gst&q=selenium+server
>
> --
> You received this message because you are subscribed to the Google Groups
> "tellurium-users" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<tellurium-users%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/tellurium-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"tellurium-users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/tellurium-users?hl=en.

Reply via email to