If I understand correctly, in test_frameworks.rb
JUnit tests are collected by taking
1) everything that extends JUnit 3 TestCase
2) every class that is annotated with JUnit 4 @Test
3) every method that is annotated with JUnit 4 @Test
2) is clearly wrong, as @Test only applies to methods, not classes
Also, I found no way to run JDave ( http://www.jdave.org/ ) specs or a custom suite with the current 1.3 trunk (22 April 2008). In 1.2, this is very easy with Buildr::Java::JUnit::JUNIT_TESTS_PATTERN filtering by test / spec class names.
Some kind of an abstraction for filtering the relevant test or spec classes is important not only for custom test framework integration, but for custom suites in big projects. Running a lot of tests is typically faster in a suite, and when you have different sets of tests (unit, integration, acceptance, black-box against a deployed application, ...) you typically want to specify which set to run. For example, the continuous integration server might only run tests against the deployed application a couple of times a day, but unit tests all the time for fast feedback. Different grouping methods of test frameworks are framework specific, and rather than making Buildr support framework specific ways, it could operate on an extra abstraction level.
Filtering by class name has worked well elsewhere (ant, maven, buildr 1.2), so it would be excellent if it would be included in 1.3 as well.
|Field||Original Value||New Value|
|Status||Open [ 1 ]||Closed [ 6 ]|
|Resolution||Fixed [ 1 ]|
|Fix Version/s||1.3 [ 12312910 ]|
|Transition||Time In Source Status||Execution Times||Last Executer||Last Execution Date|
|1d 16h 18m||1||Timo Rantalaiho||23/Apr/08 21:40|