Version 37

    How To Run the JBoss Testsuite


    You must have a source distribution of JBoss to run the testsuite.  This document applies only to JBoss 3.2.7 and above.


    Build JBoss


    Before building the testsuite, the rest of the project must be built:




    cd build
    cd build



    Build the Testsuite

    To build the testsuite, type the following.




    cd ../testsuite
    ./ main
    cd ../testsuite
    build.bat main


    Run the Testsuite

    To run the testsuite, type the following.  Note that you no longer are required to seperately start a JBoss server instance before running the testsuite. This is very important-- you must not have a JBoss instance running before you run the testsuite.





    cd ../testsuite
    ./ tests
    cd ../testsuite
    build.bat tests


    The build script will start and stop various configurations of JBoss, and then run tests against those configurations.


    Running One Module at a Time

    To run a single module at a time, you will need to start the appropriate configuration. For most tests, this will be the "all" configuration. Then





    cd ../testsuite
    ./ -Dtest=${module} test
    cd ../testsuite
    build.bat -Dtest=${module} test


    where ${module} is the module you want to test.


    Running One Test at a Time


    To run an individual test, you will need to start the appropriate configuration.  For most tests, this will be the "all" configuration:


    build/output/jboss-5.0.0alpha/bin/ -c all


    And then tell the testsuite which test you want to run:


    cd testsuite
    ./ one-test -Dtest=org.jboss.test.package.SomeTestCase


    Increasing server startup timeout

    By default jboss-test's <server:start> task waits for 120 secs for the server to start up.

    If you're server config takes more than 120 sec to startup with additional services deployed or on a really slow system you can override the server startup timeout by setting the jbossas.startup.timeout property.


    export ANT_OPTS="-Djbossas.startup.timeout=240"


    Clustering Tests Configuration

    Most of the tests are against a single server instance started on localhost.  However, the clustering tests require two server instances.  By default, the testsuite will bind one of these instances to localhost, and the other will be bound to hostname.  You can override this in the  testsuite/ file.



    The nodes must be bound to different IP addresses, otherwise there will be port conflicts.  Also, note these addresses must be local to the box you are running the testsuite on; the testsuite will need to start each server process before running the tests.

    Special Configuration for Clustering Tests on Windows Machine

    localhost and hostname do not work properly on windows. Modify under testsuite to include following:

      • node0=an ip (not

      • node1=an ip (not

      • udpGroup=239... e.g.


    The key is that these properties need to be assigned to IP addresses not on the loopback interface.  You therefore need more than one IP address on the machine. To set multiple IP addresses on windows machine in qa lab, ask IT to do it as they keep track of IP addresses used. If you want to run in your laptop, follow these instructions:

    • Go to: Start > Control Panel > Network Connections > Local Area Network.

    • Click on properties.

    • Highlight Internet Protocol (TCP/IP) and select properties.

    • Click on advanced.

    • Click on "Add an IP"

    • Add the IP and "OK" all the way out.


    Isolate from the multicast traffic in the network

    If you want to be isolated from the network multicast traffic you can try this on a linux host (as root):

    route add -net netmask lo
    ifconfig eth0 -multicast
    ifconfig lo +multicast 

    Using iptables to block incomming multicast packets works well but blocking outgoing breaks testsuite.


    Running two instances of JBoss AS (clustered) on Fedora



    Viewing the Results

    A browsable HTML document containing the testsuite results is available under testsuite/output/reports/html, and a text report (useful for emailing) is available under testsuite/output/reports/text.


    Referenced by: