This adds the ability to exclude certain slow tests from running in the
default test ant target, I have added a "slow" test group to testng. To
use it, just put something like "@Test(groups = { "slow" })" before your
test case method.
This is implemented by a modified testng.xml file which is modified by a
custom ant task called preptestng. It basically takes a
group include/exclude string like "exclude=slow,include=fast" from ant
and insert the correct tags into a copy of the testng.xml file.
A new resource directory is now created before running tests to hold the
modified testng.xml. it is located at build/unit-tests/resource. The
preptestng task will copy the master testng.xml file from
ext/testng/testng.xml to the new resource directory and add the
appropreate group tags based on parameters from ant.
This also creates a build-tools top level directory to hold this tool and any future build tools. A new ant target called "buildtools" is also added to rebuild the tools and make the build-tools.jar file in ext.
The slow tests are only ran with the all, testall, or
testallwithcoverage targets.