Dan,

I am so much impressed with the works you have put in for this plugin.

Thank you and thank you

-D

On Jan 15, 2008 1:18 PM, Dan Fabulich <[EMAIL PROTECTED]> wrote:
> The Maven team is pleased to announce the release of the Maven Surefire 
> Plugin,
> version 2.4
>
> http://maven.apache.org/plugins/maven-surefire-plugin/
>
> This version fixes numerous long-outstanding bugs, notably in TestNG support.
>
> You can run mvn -up to get the latest version of the plugin, or specify the
> version in your project's plugin configuration:
>
> <plugin>
>   <groupId>org.apache.maven.plugins</groupId>
>   <artifactId>maven-surefire-plugin</artifactId>
>   <version>2.4</version>
> </plugin>
>
> By default, Maven automatically consumes the latest version of Surefire, so we
> can reasonably expect some Maven users to begin using Surefire 2.4 
> immediately,
> perhaps without their knowledge.  In at least some cases, this will result in
> tests failing that passed using Surefire 2.3.1.  If this happens to you, the
> first and easiest thing that you can do to get your build to work again is to
> add an explicit version reference to Surefire 2.3.1, like this:
>
> <plugin>
>   <groupId>org.apache.maven.plugins</groupId>
>   <artifactId>maven-surefire-plugin</artifactId>
>   <version>2.3.1</version>
> </plugin>
>
> Especially watch out for these fixes, which may affect backwards 
> compatibility:
>
> 1) "Abstract" test cases [SUREFIRE-167]: Surefire 2.3 would automatically skip
> tests whose names start with "Abstract."  In Surefire 2.4, we use reflection 
> to
> detect abstract tests and avoid instantiating them. However, some people had
> come to rely on the old behavior, creating classes named "AbstractFooTest"
> without marking them abstract, and without putting any tests in them.  
> Surefire
> 2.4 will attempt to run these classes, and will register failures if they 
> don't
> work.  Mark all abstract test cases with the "abstract" keyword.
>
> 2) Working directory [SUREFIRE-416]: By default, the working directory of the
> running tests will be the ${basedir} of the current project, which defaults to
> the "target" directory of the currently running project. Surefire 2.3's
> behavior was inconsistent, so this may cause problems for you if your tests
> somehow depend on the old behavior.  You can configure the test working
> directory using the "workingDirectory" configuration parameter.
>
> 3) System properties [SUREFIRE-416]: Surefire allows you to configure the
> system properties of the currently running test.  By default, Surefire will 
> run
> tests in a separate process (forkMode=once); if process forking is disabled
> (forkMode=never), Surefire will set the Java system properties of the 
> currently
> executing Maven process, and finally change them back. This may have
> unanticipated side effects if you're running Maven in embedded mode and 
> process
> forking is disabled.  Embedders should not disable forking during Surefire
> testing.  [Tests themselves might do something even more dangerous, like
> calling System.exit().]
>
> 4) -DskipTests [SUREFIRE-417]: To skip tests, we now recommend using "mvn
> install -DskipTests", instead of the clumsier -Dmaven.test.skip or
> -Dmaven.test.skip.exec.  (Note that you don't need to add "=true".)  The older
> properties still do what they used to do: "maven.test.skip" will skip both
> compiling and running the tests, and "maven.test.skip.exec" will compile the
> tests without running them.  -DskipTests will compile tests without running
> them.  It is also easier to type.
>
> 5) -Dtest [SUREFIRE-350]: You can set the "test" property on the command line
> to run just a single test using Surefire (or a number of tests that match a *
> wildcard pattern).  In previous versions of Surefire, if you specified a
> non-existent test with -Dtest=MyTset, no tests would run, but the build would
> succeed.  In Surefire 2.4, the build will fail if no tests match the specified
> pattern.  Some people had been using -Dtest=0 to avoid having to type
> -Dmaven.test.skip.exec; use -DskipTests instead.
>
>
> Release Notes - Maven Surefire - Version 2.4
>
>
> ** Bug
>      * [SUREFIRE-42] - TestListenerInvocationHandler incorrectly assumes
> getName()
>      * [SUREFIRE-47] - JUnit suite() method ends up being called twice when
> tests are run with Surefire
>      * [SUREFIRE-52] - XML Reports include testcases from previous tests
>      * [SUREFIRE-55] - Incorrect splitting of command line arguments in
> ForkConfiguration
>      * [SUREFIRE-57] - Invalid characters in XML reports
>      * [SUREFIRE-58] - Not compatible with TestNG 5.4: InstantiationException:
> org.testng.internal.annotations.JDK15AnnotationFinder
>      * [SUREFIRE-112] - StringIndexOutOfBoundsException building reports from
> TestNG tests
>      * [SUREFIRE-115] - Surefire-JUnit does not recognize "suite"-methods
>      * [SUREFIRE-117] - ability to add dependency to jvm's classpath rather in
> surefirebooter classloader
>      * [SUREFIRE-118] - Cannot override read-only parameter: classpathElements
>      * [SUREFIRE-119] - With testng, incorrect test numbers are reported if
> setup method throws exception.
>      * [SUREFIRE-121] - System properties set on the command line get 
> clobbered
>      * [SUREFIRE-157] - Surefire Plugin fails to handle exception thrown from
> TestNG @BeforeTest method
>      * [SUREFIRE-158] - Web site has incorrect source repository information
>      * [SUREFIRE-160] - Bug into xml report generation
>      * [SUREFIRE-161] - Result message of Surefire TestNG run with invalid
> <suiteXmlFile> not logical.
>      * [SUREFIRE-164] - Classpath in XML report is wrong
>      * [SUREFIRE-165] - TestNG JDK1.4 JavaDoc annotated classes never run ...
> and now I know why.
>      * [SUREFIRE-166] - trimStackTrace=true trims "caused by:" sections
> complelely away
>      * [SUREFIRE-167] - Non-Abstract TestCase not executed if name starts with
> Abstract
>      * [SUREFIRE-168] - TestNG @BeforeMethod annotations not being processed
>      * [SUREFIRE-169] - No tests detected when both TestNG and JUnit in
> classpath
>      * [SUREFIRE-177] - Groups stipulated in the pom file get ignored when 
> using
> a suiteXMLFile
>      * [SUREFIRE-287] - Regression: org.testng.xml.Praser#parse() signature
> changed
>      * [SUREFIRE-307] - Tests fail if in path with spaces
>      * [SUREFIRE-313] - build fails with ClassNotFoundException, BUT the class
> IS there!
>      * [SUREFIRE-316] - [M206] Test doesn't work anymore
>      * [SUREFIRE-331] - Resources can't be found on classLoader
>      * [SUREFIRE-334] - useSystemClassLoader introduces dependencies
>      * [SUREFIRE-337] - Regression: NoSuchMethodException:
> org.apache.maven.surefire.testng.TestNGXmlTestSuite.<init>(java.io.File,
> java.lang.String)
>      * [SUREFIRE-345] - TestNG test fail with IllegalARgumentExceptoin
>      * [SUREFIRE-346] - build failure when there is any class with name 
> matching
> the test pattern, but is not a testcase
>      * [SUREFIRE-350] - if test parameter is provided, and no match is found, 
> an
> error should occur, not a successful build with 0 tests
>      * [SUREFIRE-361] - The maven-surefire-plugin fails with an NPE in TestNG
> 4.7
>      * [SUREFIRE-362] - SurefireBooter does not recognise the Properties sent 
> by
> SurefirePlugin
>      * [SUREFIRE-363] - The maven-surefire-plugin fails with a
> NoSuchMethodException.
>      * [SUREFIRE-364] - 2.4-SNAPSHOT of 27th Oct 2007 has invalid Plexus
> dependency
>      * [SUREFIRE-366] - Out Of Memory exceptions in 2.4 SNAPSHOTs
>      * [SUREFIRE-376] - TestNG @AfterSuite failures are ignored
>      * [SUREFIRE-377] - When JUnit and TestNG tests are in same project, only
> one set gets run
>      * [SUREFIRE-378] - junit-dep 4.4 isn't detected; tests are treated as 
> POJO
> tests.
>      * [SUREFIRE-379] - When an exception occurs in @BeforeMethod, the 
> exception
> is not recorded.
>      * [SUREFIRE-380] - TestNG 5.2 not recognized
>      * [SUREFIRE-385] - Booter can't decode properties when <groups> contains
> commas
>      * [SUREFIRE-388] - JUnit4 not activated when using junit-dep
>      * [SUREFIRE-389] - IncompatibleClassChangeError when
> useSystemClassLoader=true
>      * [SUREFIRE-390] - New ITs tend to duplicate class names in default
> package; this confuses IDEA
>      * [SUREFIRE-391] - current trunk doesn't work on os whithout /bin/bash 
> (as
> FreeBsd)
>      * [SUREFIRE-392] - TestNG group-thread-parallel test fails
> non-deterministically
>      * [SUREFIRE-398] - junit44-ignore test XML claims the test took a million
> seconds
>      * [SUREFIRE-403] - TestNgPathWithSpaces integration test fails on Unix
>      * [SUREFIRE-411] - -Dtest=SingleTest doesn't work in multi-project 
> reactor
>      * [SUREFIRE-412] - useSystemClassLoader warning when forkMode=never, but
> useSystemClassLoader isn't set
>      * [SUREFIRE-416] - Forked process inherits user.dir of parent process,
> multimodule builds behave differently from single module
>
> ** Improvement
>      * [SUREFIRE-59] - Not compatible with TestNG 5.2:
> java.lang.NoSuchMethodError: org.testng.xml.XmlSuite.setParallel(Z)V
>      * [SUREFIRE-136] - The plugin does not use JAVA_HOME variable and 
> launches
> default JVM
>      * [SUREFIRE-137] - provide option to list all of the test cases which
> failed when running a build
>      * [SUREFIRE-181] - allow 'test' argument to take fully qualified class
> names as well as the current short format, and document the current behaviour
> better
>      * [SUREFIRE-183] - enhance maven.surefire.debug property to allow a full
> debug string (and take the current default if none given for backwards compat)
>      * [SUREFIRE-186] - Make the use of 'test' env-var more Eclipse-friendly
>      * [SUREFIRE-303] - Ignored/Skipped tests are not reported
>      * [SUREFIRE-325] - when parsing excludedGroups config prop, trim leading
> and trailing whitespace off of group names
>      * [SUREFIRE-352] - Get rid of hardcoded TestNG dependency name.
>      * [SUREFIRE-370] - Make testing frameworks artifact names configurable in
> plugin
>      * [SUREFIRE-384] - Allow TestNG to generate its native XML output
>      * [SUREFIRE-400] - Add basic statement of JUnit version support
>      * [SUREFIRE-417] - Make new "skipTests" parameter to replace skipExec
>
> ** New Feature
>      * [SUREFIRE-268] - Aggragated surefire report from modules
>      * [SUREFIRE-320] - Add a timeout property to the plugin
>
> ** Task
>      * [SUREFIRE-50] - write comprehensive tests for surefire
>      * [SUREFIRE-394] - Resolve snapshot dependencies in Surefire 2.4
>
>
> ** Wish
>      * [SUREFIRE-139] - JUnit 4 integration
>
> Enjoy,
>
> -The Maven Team
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to