You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Dan Fabulich (JIRA)" <ji...@codehaus.org> on 2008/04/28 22:08:46 UTC

[jira] Updated: (SUREFIRE-468) When tests timeout, report files on disk are incorrect

     [ http://jira.codehaus.org/browse/SUREFIRE-468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dan Fabulich updated SUREFIRE-468:
----------------------------------

    Fix Version/s: 2.5
          Summary: When tests timeout, report files on disk are incorrect  (was: test timeout handling)

When I run the "timeout-forked" integration test, it fails the Maven build, which is correct behavior.

However, it seems to always generate the TXT file, and sometimes generates the XML file and sometimes not.  (Seems like it usually doesn't generate XML when using "mvn clean test", but usually does generate XML when using "mvn clean && mvn test".)

In all cases, all of the files remaining on disk seem to suggest that the test passed. For example, the TXT file says "Tests run: 1, Failures: 0," the XML file says <testsuite failures="0" tests="1">, etc.

> When tests timeout, report files on disk are incorrect
> ------------------------------------------------------
>
>                 Key: SUREFIRE-468
>                 URL: http://jira.codehaus.org/browse/SUREFIRE-468
>             Project: Maven Surefire
>          Issue Type: Bug
>          Components: plugin, process forking
>    Affects Versions: 2.4.2
>            Reporter: A
>             Fix For: 2.5
>
>
> When forkmode is always/prtest (probably that could be true for the last test and forkmode once) when one test hangs and timeout occurs, est suite execution stops and report file for the offending test not generated. That could mislead somebody to think all tests passed if all tests before the offending one passed.
> AFAICT that should be synchronized between one of these:
> 1. CommandLineUtils.executeCommandLine()
> 2. SurefireBooter.fork() 
> 3. SurefireBooter.run()
> 4. SurefirePlugin.execute()
> Probably fork must detect a timeout. Then the timeout be gracefully handled by generating a report file for the test. Then continue execution of remaining tests.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira