Has anyone tried Groovy Parallel Systems (GPars)?

http://gpars.codehaus.org/

Maybe we should consider adding parallel execution support in Core with
GPars?

On Sat, Mar 20, 2010 at 1:51 AM, Jian Fang <[email protected]> wrote:

> I created a TestNG Java test case and use thread pool for parallel
> execution, and I got a different error.
> Could you try my code to see what you get?
>
> Thanks,
>
> Jian
>
> public class SampleTestNGParallelTest extends TelluriumTestNGTestCase {
>
>     @BeforeClass
>     public static void initUi() {
>         connectSeleniumServer();
>         useTrace(true);
>     }
>
>     @Test(threadPoolSize = 5, invocationCount = 10)
>     public void testOne() {
>
>       connectUrl("http://google.com";);
>       assertEquals("location should be google", "http://www.google.com/";,
> connector.getSelenium().getProperty("location"));
>         try {
>             sleep(500);
>         } catch (InterruptedException e) {
>
>         }
>     }
>
>     @Test(threadPoolSize = 5, invocationCount = 10)
>     public void testTwo() {
>       connectUrl("http://amazon.com";);
>       assertEquals("location should be amazon", "http://www.amazon.com/";,
> connector.getSelenium().getProperty("location"));
>         try {
>             sleep(500);
>         } catch (InterruptedException e) {
>
>         }
>     }
>
>     @AfterClass
>     public static void tearDown() {
>         showTrace();
>
>     }
> }
>
>
> On Wed, Mar 17, 2010 at 8:18 PM, Jian Fang <[email protected]>wrote:
>
>> Issue 408 has been created to track this problem.
>>
>> http://code.google.com/p/aost/issues/detail?id=408
>>
>>
>> On Wed, Mar 17, 2010 at 8:14 PM, Jian Fang <[email protected]>wrote:
>>
>>> Jason,
>>>
>>> Thanks for bringing this question up. You are right, we haven't thought
>>> of
>>> the parallel execution in Tellurium Core yet. We will reproduce your
>>> problem
>>> and see if we can have a quick fix.
>>>
>>> More important concerns may include the singleton pattern we used in
>>> Tellurium
>>> core. Perhaps we should consider both singleton and prototype objects
>>> like Spring
>>> bean or Google Guice does. We need to think about this more deeply.
>>>
>>> Thanks again,
>>>
>>> Jian
>>>
>>>
>>> On Tue, Mar 16, 2010 at 9:45 PM, Jason <[email protected]> wrote:
>>>
>>>> Oops, I realize this test needs thread synchronization ( so that the
>>>> connectUrl() and asserts are done in a synchronized block), but for
>>>> now, just note that you'll get the selenium error:
>>>>
>>>> com.thoughtworks.selenium.SeleniumException:
>>>> The_server_localhost_failed_to_respond_with_a_valid_HTTP_response
>>>>
>>>> instead of just assertion failures...
>>>>
>>>>
>>>>
>>>> On Mar 16, 6:41 pm, Jason <[email protected]> wrote:
>>>> > OK, I think this demonstrates the issue.  There are 2 parts -- one is
>>>> > the suite file, the other is the test.
>>>> >
>>>> > Test first:
>>>> >
>>>> > import org.tellurium.test.groovy.*;
>>>> >
>>>> > import org.testng.annotations.*;
>>>> > import static org.testng.AssertJUnit.*;
>>>> > import org.tellurium.dsl.DslContext;
>>>> >
>>>> > public class UltraSimpleParallelTest extends
>>>> > TelluriumGroovyTestNGTestCase {
>>>> >
>>>> >     public void initUi() { }
>>>> >
>>>> >     @Test
>>>> >     public void testOne() {
>>>> >         1.upto(10) {
>>>> >             connectUrl("http://google.com";);
>>>> >             assertEquals("location should be google", "
>>>> http://www.google.com/";, connector.sel.getProperty("location"));
>>>> >             sleep(500)
>>>> >         }
>>>> >     }
>>>> >
>>>> >     @Test
>>>> >     public void testTwo() {
>>>> >         1.upto(10) {
>>>> >             connectUrl("http://amazon.com";);
>>>> >             assertEquals("location should be amazon", "
>>>> http://www.amazon.com/";, connector.sel.getProperty("location"));
>>>> >             sleep(500)
>>>> >         }
>>>> >     }
>>>> >
>>>> > }
>>>> >
>>>> > suite file:
>>>> >
>>>> > <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd";>
>>>> > <suite thread-count="2" skipfailedinvocationCounts="false" verbose="1"
>>>> > name="parallel_test" junit="false" parallel="methods"
>>>> > annotations="JDK" data-provider-thread-count="2">
>>>> >   <test name="parallel_test" junit="false" parallel="methods"
>>>> > annotations="JDK">
>>>> >     <classes>
>>>> >       <class name="UltraSimpleParallelTest">
>>>> >         <methods>
>>>> >           <include name="testOne"/>
>>>> >           <include name="testTwo"/>
>>>> >         </methods>
>>>> >       </class>
>>>> >     </classes>
>>>> >   </test>
>>>> > </suite>
>>>>
>>>> --
>>>> 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