[arquillian-issues] [JBoss JIRA] (ARQ-1902) Provide SPI for conditional execution of test methods

Stefan Miklosovic (JIRA) issues at jboss.org
Wed Jan 21 05:57:49 EST 2015


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

Stefan Miklosovic commented on ARQ-1902:
----------------------------------------

Good catch, I guess that excluding Before and After from execution would be necessary as well. I see reporting as a marginal problem, I do not want to fire property events in Core. Core has to be clean of all extensions / apis. However, my "jira" extension could fire them on its own and mark it as skipped. I need to look at this more closely. I do not know right now how to skip whole before / test / after lifecycle.

> Provide SPI for conditional execution of test methods
> -----------------------------------------------------
>
>                 Key: ARQ-1902
>                 URL: https://issues.jboss.org/browse/ARQ-1902
>             Project: Arquillian
>          Issue Type: Feature Request
>          Components: Base Implementation
>    Affects Versions: 1.1.5.Final
>            Reporter: Stefan Miklosovic
>
> [~aslak]
> Let me explain.
> We want to do this:
> {code}
> @RunWith(Arquillian.class)
> @RunAsClient
> public class TestCase
> {
>     @Test
>     @Jira("ARQ-1")
>     public void test() {
>         // this test method will be executed 
>         // because Aslak created EJB Jar archive (JIRA status = done)
>     }
>     @Test
>     @Jira("ARQ-xyz")
>     public void test() {
>         // this methods will NOT be executed (will be skipped)
>         // becase lets say that its status is "open / unresolved"
>     }
> }
> {code}
> While looking into the code, it seems these classes are most important (1), (2).
> So my initial approach was that I wanted to kind of "hook" into that execution and dynamically resolve if that test method is going to be executed or not but I am failing to do so since there is not any SPI which would load my test-method-execution-decider which would tell if that method is going to be executed or if it will be marked as skipped.
> In that decider, I would dynamically log in to jira and read if that jira is resolved or nor and behave accordingly.
> Is there any will to push this to upstream once implemented? Default decider would indeed execute that method every time and I would just put my own decider and whole JIRA api on class path in my custom extension.
> (1) https://github.com/arquillian/arquillian-core/blob/master/container/test-impl-base/src/main/java/org/jboss/arquillian/container/test/impl/execution/ClientTestExecuter.java#L44
> (2) https://github.com/arquillian/arquillian-core/blob/master/container/test-impl-base/src/main/java/org/jboss/arquillian/container/test/impl/execution/LocalTestExecuter.java#L55



--
This message was sent by Atlassian JIRA
(v6.3.11#6341)


More information about the arquillian-issues mailing list