Details
-
Type:
Bug
-
Status: Resolved (View Workflow)
-
Priority:
Major
-
Resolution: Fixed
-
Component/s: core
-
Labels:
-
Environment:Platform: All, OS: All
-
Similar Issues:
Description
I have noticed that the HudsonTestCase sometimes does not do a proper clean up
of the temp folders. On Windows this happens every time because of a file in use
error. On Linux (debian) this sometimes happen if a test fails. As the temp
folder can contain up to 14mbs, the total size can grow quickly.
After 1 month of developing/testing my hudson test case folders consisted of
500+k files in 892 folders, amounting to 7+Gb. (Windows)
Maybe we can use the new TemporaryFolder rule that is available in JUnit 4.7, so
we can lift out stuff from our implementation? http://github.com/KentBeck/junit/raw/23ffc6baf5768057e366e183e53f4dfa86fbb005/do
c/ReleaseNotes4.7.txt
Steps to reproduce on linux:
1. Clean out all hudsonXXXX folders in the temp folder
2. Go to hudson/plugins/seleniuma
3. run "mvn test" and watch it fail
4. Check the temp folder
Expected result:
No new folder in the temp folder
Actual Result:
A folder named hudsonXXXXXXX has been created
Steps to reproduce:
1. Go to hudson/plugins/ci-game
2. run "mvn test"
3. Watch output
Expected result:
Test fails
Actual Result:
An exception is thrown during the test clean up:
java.io.IOException: Unable to delete
C:\DOCUME~1\name\LOCALS~1\Temp\hudson40664test\plugins\maven-plugin\WEB-INF\lib\
classworlds-1.1.jar
at hudson.Util.deleteFile(Util.java:225)
at hudson.Util.deleteRecursive(Util.java:257)
at hudson.Util.deleteContentsRecursive(Util.java:186)
at hudson.Util.deleteRecursive(Util.java:256)
at hudson.Util.deleteContentsRecursive(Util.java:186)
at hudson.Util.deleteRecursive(Util.java:256)
at hudson.Util.deleteContentsRecursive(Util.java:186)
at hudson.Util.deleteRecursive(Util.java:256)
at hudson.Util.deleteContentsRecursive(Util.java:186)
at hudson.Util.deleteRecursive(Util.java:256)
at hudson.Util.deleteContentsRecursive(Util.java:186)
at hudson.Util.deleteRecursive(Util.java:256)
at hudson.FilePath$9.invoke(FilePath.java:748)
at hudson.FilePath$9.invoke(FilePath.java:746)
at hudson.FilePath.act(FilePath.java:676)
at hudson.FilePath.act(FilePath.java:660)
at hudson.FilePath.deleteRecursive(FilePath.java:746)
at
org.jvnet.hudson.test.TemporaryDirectoryAllocator$1.run(TemporaryDirectoryAlloca
tor.java:90)
Attachments
Issue Links
- is duplicated by
-
JENKINS-4249 HudsonTestCase leaves temporary directories
-
- Closed
-
- is related to
-
JENKINS-12328 Hudson test harness intermittently fails to delete temp directories
-
- Open
-
-
JENKINS-18643 Make tests run on Windows
-
- Resolved
-
- links to
Code changed in jenkins
User: Christian Pönisch
Path:
src/test/java/de/tracetronic/jenkins/plugins/ecutest/SystemTestBase.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/TestPluginManagerCleanUp.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/atx/ATXPublisherST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/atx/ATXPublisherTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/generator/ReportGeneratorPublisherST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/generator/ReportGeneratorPublisherTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/junit/JUnitPublisherST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/junit/JUnitPublisherTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/log/ETLogPublisherST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/log/ETLogPublisherTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/trf/TRFPublisherST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/report/trf/TRFPublisherTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestFolderBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestFolderBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestPackageBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestPackageBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestProjectBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/test/TestProjectBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StartETBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StartETBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StartTSBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StartTSBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StopETBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StopETBuilderTest.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StopTSBuilderST.java
src/test/java/de/tracetronic/jenkins/plugins/ecutest/tool/StopTSBuilderTest.java
http://jenkins-ci.org/commit/ecutest-plugin/189cbd8a033bb7fb204ff7a68ad38cd0e5e90bf1
Log:
JENKINS-31999added more testsJENKINS-4409in system tests