[
https://jira.codehaus.org/browse/SUREFIRE-726?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=281599#comment-281599
]
Parameswaran Raman commented on SUREFIRE-726:
---------------------------------------------
Hi,
I am looking to use TLB with Maven for my project. It would be great if you can
push in this patch as quickly as possible as there is a significant improvement
(in build time) that we are looking forward to.
--
Thanks,
Params
[email protected]
> Test list preprocessor support for tests to be run
> --------------------------------------------------
>
> Key: SUREFIRE-726
> URL: https://jira.codehaus.org/browse/SUREFIRE-726
> Project: Maven Surefire
> Issue Type: New Feature
> Affects Versions: 2.9
> Reporter: Janmejay Singh
> Fix For: 3.0
>
> Attachments:
> 0001-Adds-test-list-preprocessor-support-which-loads-an-o.patch,
> 0002-Integration-test-for-preprocessor.-2-modules-one-pro.patch,
> 0003-exposed-testPreprocessor-configuration-parameter-as-.patch,
> 0004-exposed-testPreprocessor-for-IntegrationTestMojo-as-.patch
>
>
> This exposes an interface(named TestListPreprocessor, which has a method
> named preprocessTestClasses) that can be implemented by a user and injected
> into surefire plugin configuration to have it used for preprocessing list of
> tests to be run. Given the original test list, user's preprocessing algorithm
> can choose to prune or reorder the list and return it back from
> TestListPreprocessor#preprocessTestClasses, which is then used as the list of
> tests to be executed.
> The patches attached expose a configuration element named "testPreprocessor"
> the default value of which is "none". User can choose to set it to a value
> matching the format
> "<fully-qualified-class-name>[<group-id>:<artifact-id>:<version>]" and have
> the class loaded and called with list of tests to be run. The list of tests
> returned by the call is then considered for execution.
> Patch description:
> The feature is done in 2 patches. Description follows:
> 0001-Adds-test-list-preprocessor-support-which-loads-an-o.patch
> This patch actually adds the feature and unit tests. It adds the interface,
> an abstraction that encapsulates aforementioned configuration, booter
> serialization/deserialization, directory-scanner changes etc. The changes
> have effect in both forked and in-process execution mode.
> 0002-Integration-test-for-preprocessor.-2-modules-one-pro.patch
> This patch adds an integration test for preprocessor feature. The integration
> test uses a 2 module setup, where the first module implements the
> TestListPreprocessor interface which selects only even indexed test classes
> from the list passed in. The second module(which depends on first) uses the
> artifact from first and uses the following configuration:
> --------------------
> <configuration>
>
> <testPreprocessor>test.preprocessor.EvenTestOnlyPreprocessor[org.apache.maven.plugins.surefire:preprocessor-impl:1.0-SNAPSHOT]</testPreprocessor>
> </configuration>
> --------------------
> The test then asserts that only 2(0th and 2nd) of the 4 test classes the
> second module has are executed.
> The patches are created on a git-svn clone using format-patch, please use
> 'patch -p1 < 0001-Adds...'(while in the trunk directory) to apply the patches
> on svn repository. If using git-svn, git-am can be directly be invoked.
> The patches are done over
> http://svn.apache.org/repos/asf/maven/surefire/trunk@1091357 (trunk HEAD) so
> should apply cleanly on any recent enough revision.
> ===============================================================================
> Context:
> http://stackoverflow.com/questions/5124823/reducing-the-build-time-hudson
> http://code.google.com/p/tlb/issues/detail?id=1
> http://test-load-balancer.github.com
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira