You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by ti...@apache.org on 2023/05/29 13:33:52 UTC
[pulsar] branch master updated: [improve][ci] Improve TestNG test execution to debug flaky test failures (#20425)
This is an automated email from the ASF dual-hosted git repository.
tison pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new 0bdcaecd38e [improve][ci] Improve TestNG test execution to debug flaky test failures (#20425)
0bdcaecd38e is described below
commit 0bdcaecd38edbf4597261240aa47aa50c879921e
Author: Lari Hotari <lh...@users.noreply.github.com>
AuthorDate: Mon May 29 16:33:46 2023 +0300
[improve][ci] Improve TestNG test execution to debug flaky test failures (#20425)
---
.../org/apache/pulsar/tests/FailFastNotifier.java | 3 +--
.../apache/pulsar/tests/PulsarTestListener.java | 25 +++++++++++++++-------
2 files changed, 18 insertions(+), 10 deletions(-)
diff --git a/buildtools/src/main/java/org/apache/pulsar/tests/FailFastNotifier.java b/buildtools/src/main/java/org/apache/pulsar/tests/FailFastNotifier.java
index 627a4ec3054..fe76a79b2c4 100644
--- a/buildtools/src/main/java/org/apache/pulsar/tests/FailFastNotifier.java
+++ b/buildtools/src/main/java/org/apache/pulsar/tests/FailFastNotifier.java
@@ -124,8 +124,7 @@ public class FailFastNotifier
|| iTestNGMethod.isAfterTestConfiguration())) {
throw new FailFastSkipException("Skipped after failure since testFailFast system property is set.");
}
- }
- if (FAIL_FAST_KILLSWITCH_FILE != null && FAIL_FAST_KILLSWITCH_FILE.exists()) {
+ } else if (FAIL_FAST_KILLSWITCH_FILE != null && FAIL_FAST_KILLSWITCH_FILE.exists()) {
throw new FailFastSkipException("Skipped after failure since kill switch file exists.");
}
}
diff --git a/buildtools/src/main/java/org/apache/pulsar/tests/PulsarTestListener.java b/buildtools/src/main/java/org/apache/pulsar/tests/PulsarTestListener.java
index b3d70621843..2d1f1273272 100644
--- a/buildtools/src/main/java/org/apache/pulsar/tests/PulsarTestListener.java
+++ b/buildtools/src/main/java/org/apache/pulsar/tests/PulsarTestListener.java
@@ -44,20 +44,29 @@ public class PulsarTestListener implements ITestListener {
if (!(result.getThrowable() instanceof SkipException)) {
System.out.format("!!!!!!!!! FAILURE-- %s.%s(%s)-------\n", result.getTestClass(),
result.getMethod().getMethodName(), Arrays.toString(result.getParameters()));
- }
- if (result.getThrowable() != null) {
- result.getThrowable().printStackTrace();
- if (result.getThrowable() instanceof ThreadTimeoutException) {
- System.out.println("====== THREAD DUMPS ======");
- System.out.println(ThreadDumpUtil.buildThreadDiagnosticString());
+ if (result.getThrowable() != null) {
+ result.getThrowable().printStackTrace();
+ if (result.getThrowable() instanceof ThreadTimeoutException) {
+ System.out.println("====== THREAD DUMPS ======");
+ System.out.println(ThreadDumpUtil.buildThreadDiagnosticString());
+ }
}
}
}
@Override
public void onTestSkipped(ITestResult result) {
- System.out.format("~~~~~~~~~ SKIPPED -- %s.%s(%s)-------\n", result.getTestClass(),
- result.getMethod().getMethodName(), Arrays.toString(result.getParameters()));
+ if (!(result.getThrowable() instanceof SkipException)) {
+ System.out.format("~~~~~~~~~ SKIPPED -- %s.%s(%s)-------\n", result.getTestClass(),
+ result.getMethod().getMethodName(), Arrays.toString(result.getParameters()));
+ if (result.getThrowable() != null) {
+ result.getThrowable().printStackTrace();
+ if (result.getThrowable() instanceof ThreadTimeoutException) {
+ System.out.println("====== THREAD DUMPS ======");
+ System.out.println(ThreadDumpUtil.buildThreadDiagnosticString());
+ }
+ }
+ }
}
@Override