I don't think this is a problem in either Maven or Surefire plug-in. Else the surefire is behaving differently. It looks like now, when Surefire forks the JVM, will not take all the system properties from the parent JVM.
That's why you should pass whatever system properties you want for the tests, using argLine.
So, both these should work
mvn2.1 -Dsystem.test.property=test test -DforkMode=never
or
mvn2.1 test -DargLine="-Dsystem.test.property=test"
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…