[ https://issues.apache.org/jira/browse/SUREFIRE-1385?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17868183#comment-17868183 ]
ASF GitHub Bot commented on SUREFIRE-1385: ------------------------------------------ michael-o commented on PR #762: URL: https://github.com/apache/maven-surefire/pull/762#issuecomment-2246256030 > I already extended the javadoc in [cd72eaa](https://github.com/apache/maven-surefire/commit/cd72eaa0f1e2c2c8d41e643ae5bcfbcb4e36f8ed) (you reviewed and approved) but for me this is only remotely related to this PR. Ah, yes now I see. This makes sense. It was merely a side comment. > System properties defined in the Surefire and Failsafe plugin configuration > should override user properties > ----------------------------------------------------------------------------------------------------------- > > Key: SUREFIRE-1385 > URL: https://issues.apache.org/jira/browse/SUREFIRE-1385 > Project: Maven Surefire > Issue Type: Improvement > Components: Maven Failsafe Plugin, Maven Surefire Plugin > Affects Versions: 2.20 > Reporter: Guillaume Boué > Assignee: Konrad Windszus > Priority: Major > > Consider a build with the following POM configuration for the Maven Failsafe > Plugin: > {code:xml} > <configuration> > <systemPropertyVariables> > <prop>foo</prop> > </systemPropertyVariables> > </configuration> > {code} > When running the build with the command line {{mvn -Dprop=bar ...}}, the > tests would be passed a system property with a value of {{bar}} instead of > {{foo}}. > This is counter-intuitive since direct configuration of the plugin is > overriden by the more general properties passed on the command line. I would > have expected the closer definition in the POM to override the one passed > with the CLI. Furthermore, in the case of the above sample, it would not be > possible for the tests run by the Failsafe Plugin to have a system property > {{prop}} with a value of {{foo}} if the build happens to already define a > system property with the same name. While using a different name to avoid a > clash is possible, it still doesn't make the test self-contained and > consistent since anyone could run Maven with that other name and compromise > the test that really relies on the system property having a value of {{foo}}. > The proposal is thus to make the {{systemPropertyVariables}} and > {{systemPropertiesFile}} configuration elements of the Surefire and Failsafe > Plugin take precedence over user properties passed on the command line. > Proposed commit > [4de017b38b101b0b28f9fbed135eae3921b99d0d|http://git-wip-us.apache.org/repos/asf/maven-surefire/commit/4de017b3] > on SUREFIRE-1385 branch. -- This message was sent by Atlassian Jira (v8.20.10#820010)