diff --git a/changelog.html b/changelog.html index 81faa6cd0f7842ad4bde92010c566a4dfefd710b..41af69dcd558292091a1d2225045808510e611c3 100644 --- a/changelog.html +++ b/changelog.html @@ -55,7 +55,9 @@ Upcoming changes diff --git a/core/src/main/java/hudson/tasks/junit/JUnitResultArchiver.java b/core/src/main/java/hudson/tasks/junit/JUnitResultArchiver.java index 294cd953131dd2825dc82a0e765ada23346fce7a..a2548bdc569ad1c8e0cbde2372936716d30c3361 100644 --- a/core/src/main/java/hudson/tasks/junit/JUnitResultArchiver.java +++ b/core/src/main/java/hudson/tasks/junit/JUnitResultArchiver.java @@ -57,7 +57,6 @@ import org.kohsuke.stapler.QueryParameter; import org.kohsuke.stapler.StaplerRequest; import java.io.IOException; -import java.io.Serializable; import java.util.ArrayList; import java.util.Collection; import java.util.Collections; @@ -139,8 +138,10 @@ public class JUnitResultArchiver extends Recorder implements MatrixAggregatable throw new AbortException(Messages.JUnitResultArchiver_BadXML(testResults)); } result.freeze(action); - if (result.getPassCount() == 0 && result.getFailCount() == 0) + if (result.isEmpty()) { + // most likely a configuration error in the job - e.g. false pattern to match the JUnit result files throw new AbortException(Messages.JUnitResultArchiver_ResultIsEmpty()); + } // TODO: Move into JUnitParser [BUG 3123310] List data = new ArrayList(); diff --git a/core/src/main/java/hudson/tasks/junit/TestResult.java b/core/src/main/java/hudson/tasks/junit/TestResult.java index a04467c9b0a370a181f32aa7308ffde49db3c33f..db934b8d8d2001935654abc09c8e748f92e5e142 100644 --- a/core/src/main/java/hudson/tasks/junit/TestResult.java +++ b/core/src/main/java/hudson/tasks/junit/TestResult.java @@ -377,6 +377,15 @@ public final class TestResult extends MetaTabulatedResult { public int getSkipCount() { return skippedTests; } + + /** + * Returns true if this doesn't have any any test results. + * @since 1.511 + */ + @Exported(visibility=999) + public boolean isEmpty() { + return getTotalCount() == 0; + } @Override public List getFailedTests() {