[jbossws-dev] Parallel / concurrent testsuite execution

Alessio Soldano asoldano at redhat.com
Tue Apr 10 04:35:23 EDT 2012


Folks,
I've just solved JBWS-3482. That basically allows running multiple tests
at the same time leveraging the Maven integration with JUnit 4.
The surefire plugin is currently configured with

  <parallel>classes</parallel>
  <threadCount>1</threadCount>
  <perCoreThreadCount>true</perCoreThreadCount>

meaning we have one thread per core (not that much to keep memory
consumption low) and all test methods of a testcase class are execute in
the same thread.
My local testing on a Core i7 M620 @2.67GHz shows a 38% improve in time
taken to run the full jbossws-cxf testsuite (compared actual testcases
executions using -o -Dnoprepare=true).
I've been fixing the RemoteDeployer classes to allow concurrent
invocations to deploy()/undeploy()/etc. and the testsuites to avoid
trying deploying archives containing endpoints with the same
context-root (which would cause exceptions in the web layer). So
starting from now, please be careful with that (most the time this
basically means using unique names for test archives).

While the concurrent runs are enabled by default and I've had very
consistent good results, you can now also try the experimental maven
concurrent execution mode with the jbossws testsuites. That is enabled
by using the -T maven option, e.g.: 'mvn -T2 -Pjboss712
-Djboss712.home=/path/to/jboss-as-7.1.2.Final-SNAPSHOT integration-test'
Use this with the testsuite only, not when building/installing the
stack. Speaking of performances, I've noticed an additional 17%
execution time improvement with -T2.

Cheers
Alessio

-- 
Alessio Soldano
Web Service Lead, JBoss


More information about the jbossws-dev mailing list