Details

    • Type: Feature Request Feature Request
    • Status: Open Open (View Workflow)
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 2.0.0.Beta1
    • Component/s: None
    • Security Level: Public (Everyone can see)
    • Labels:
      None
    • Similar Issues:
      Show 10 results 

      Description

      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.

        Issue Links

          Activity

          Dan Allen
          made changes -
          Field Original Value New Value
          Link This issue is related to ARQ-287 [ ARQ-287 ]
          Dan Allen
          made changes -
          Dan Allen
          made changes -
          Link This issue is related to ARQ-734 [ ARQ-734 ]
          Dan Allen
          made changes -
          Link This issue relates to ARQ-442 [ ARQ-442 ]
          Hide
          Dan Allen
          added a comment -

          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."

          Show
          Dan Allen
          added a comment - 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."
          Aslak Knutsen
          made changes -
          Link This issue is related to ARQ-1011 [ ARQ-1011 ]
          Aslak Knutsen
          made changes -
          Comment [ Support for multiple Container types on Classpath would be needed to support guest containers. ]
          Aslak Knutsen
          made changes -
          Link This issue is related to ARQ-1011 [ ARQ-1011 ]
          Aslak Knutsen
          made changes -
          Fix Version/s 1.1.0.Beta1 [ 12316432 ]
          Forum Reference https://community.jboss.org/thread/199115 https://community.jboss.org/thread/199115

            People

            • Assignee:
              Unassigned
              Reporter:
              Dan Allen
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: