[ https://jira.codehaus.org/browse/SUREFIRE-856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=340308#comment-340308 ]
Sean Colyer edited comment on SUREFIRE-856 at 1/28/14 2:39 PM: --------------------------------------------------------------- This seems to still be an issue. Diving somewhat in depth into the problem it seems tied to {{org.apache.maven.plugin.surefire.AbstractSurefireMojo.java:1578}} {code} if ( isSpecificTestSpecified() && !isMultipleExecutionBlocksDetected() ) {code} This shows itself within {{org.apache.maven.plugin.surefire.util.DirectoryScanner#scan}} where the {{specificTests}} are processed into a filter, and then the available classes are filtered down by what is in the {{includes}} list. The issue scenario for this ticket occurs when the {{includes}} does not include the {{specificTests}} specified via CLI. The {{include}} list would not contain it if the above {{isMultipleExecutionBlocksDetected}} is true (multiple execution blocks). I'm not sure I follow the explanation for a scenario where you would ever want to manually say something like: {{mvn test -Dtest=RandomTestName}} and the test not to be run. I understand the value of different executions, but don't see the value in having them override all CLI arguments. Should I attach a patch here if what I'm saying is not clear? was (Author: seancolyer): This seems to still be an issue. Diving somewhat in depth into the problem it seems tied to {{org.apache.maven.plugin.surefire.AbstractSurefireMojo.java:1578}} {code} if ( isSpecificTestSpecified() && !isMultipleExecutionBlocksDetected() ) {code} This shows itself within {{org.apache.maven.plugin.surefire.util.DirectoryScanner#scan}} where the {{specificTests}} are processed into a filter, and then the available classes are filtered down by what is in the {{includes}} list. The issue scenario for this ticket occurs when the {{includes}} does not include the {{specificTests}} specified via CLI. I'm not sure I follow the explanation for a scenario where you would ever want to manually say something like: {{mvn test -Dtest=RandomTestName}} and the test not to be run. I understand the value of different executions, but don't see the value in having them override all CLI arguments. Should I attach a patch here if what I'm saying is not clear? > Running single test in Failsafe using CLI does not override <includes> > configuration > ------------------------------------------------------------------------------------ > > Key: SUREFIRE-856 > URL: https://jira.codehaus.org/browse/SUREFIRE-856 > Project: Maven Surefire > Issue Type: Bug > Components: Maven Failsafe Plugin > Affects Versions: 2.12 > Environment: Mac OS X 10.7, Maven 3.0.3, JDK 1.7.0_04-ea > Reporter: David Drake > Priority: Minor > > h4. Description > If a single test is specified from using CLI parameters, but the test does > not match the <includes> pattern for failsafe, then the test will not run. > This is different from the behavior for the surefire plugin, which will run > any test specified using CLI parameters. If the test does match the > <includes> pattern for failsafe, then it will run. > h4. Reproduction steps > # Create a project with a single test named "Sample.java". > # Add the following block to the failsafe configuration: > {code:xml} > <includes> > <include>**/Sample.java</include> > </includes> > {code} > # Run "mvn clean verify -Dit.test=Sample" from the command line (and verify > that test runs). > # Remove the <includes> block shown above from the pom. > # Run "mvn clean verify -Dit.test=Sample" from the command line. > h4. Expected results > Sample test is run, as before, and no other tests are run. > h4. Actual results > No tests are run. -- This message was sent by Atlassian JIRA (v6.1.6#6162)