[arquillian-issues] [JBoss JIRA] (ARQ-905) Provide SPI for filtering tests

Dan Allen (JIRA) jira-events at lists.jboss.org
Wed May 30 02:31:18 EDT 2012


    [ https://issues.jboss.org/browse/ARQ-905?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12697002#comment-12697002 ] 

Dan Allen commented on ARQ-905:
-------------------------------

The following blog entry describes a similar feature in RSpec2 called filters:

http://blog.davidchelimsky.net/2010/06/14/filtering-examples-in-rspec-2/

According to the description in the post, you can "slice and dice a spec suite in a variety of ways."
                
> Provide SPI for filtering tests
> -------------------------------
>
>                 Key: ARQ-905
>                 URL: https://issues.jboss.org/browse/ARQ-905
>             Project: Arquillian
>          Issue Type: Feature Request
>      Security Level: Public(Everyone can see) 
>            Reporter: Dan Allen
>
> Provide an SPI (or observer hook) for filtering the test classes.
> There are many reasons to filter which tests are run:
> * execution speed
> * available environment (e.g., based on target container, based on access to shared resource)
> * permitted exclusions (like in a TCK)
> * user story
> * deliverable
> * demo
> * security (whether running the test is allowed)
> * ...
> We can't think of all of them. That's why we should over an SPI to allow these possibilities to be explored.
> Currently, test filtering (or selection) is handled in a few different ways:
> * suite definition
> * groups
> * test plugin includes/excludes (e.g., Maven surefire)
> While these options can handle many of the cases, they are still very limiting, esp since they are static declarations. Imagine long lists of test classes or brow-wrinkling include/exclude logic.
> Let's give the developers the choice of how they want to implement filtering. We can then provide some nice options in the way of extensions. For instance, imagine a rule-based test filter extension. You can write rules in the Drools DSL to decide which tests to execute. This is very powerful for user story-based development and even contract deliverables.
> The filter should be able to inject various parts of the Arquillian runtime, including:
> * Current test class being processed
> * Active container class and configuration
> * Test archive
> The filter should be able to invoke an "ignore" or "skip" method to instruct Arquillian to skip running the test.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the arquillian-issues mailing list