Add traces of methods to runners
Test: presubmit
Bug: 256019482
Change-Id: I6fb5502edb79cb7be49c3acdd225774e2503e24d
diff --git a/test_framework/com/android/tradefed/testtype/ArtRunTest.java b/test_framework/com/android/tradefed/testtype/ArtRunTest.java
index 3899f65..9798385 100644
--- a/test_framework/com/android/tradefed/testtype/ArtRunTest.java
+++ b/test_framework/com/android/tradefed/testtype/ArtRunTest.java
@@ -22,6 +22,7 @@
import com.android.tradefed.invoker.TestInformation;
import com.android.tradefed.invoker.logger.InvocationMetricLogger;
import com.android.tradefed.invoker.logger.InvocationMetricLogger.InvocationMetricKey;
+import com.android.tradefed.invoker.tracing.CloseableTraceScope;
import com.android.tradefed.log.LogUtil.CLog;
import com.android.tradefed.metrics.proto.MetricMeasurement.Metric;
import com.android.tradefed.result.FileInputStreamSource;
@@ -222,7 +223,7 @@
// Path to temporary remote directory used to store files used in test.
String tmpTestRemoteDirPath = null;
- try {
+ try (CloseableTraceScope ignored = new CloseableTraceScope(testId.toString())) {
if (mCollectTestsOnly) {
return;
}
diff --git a/test_framework/com/android/tradefed/testtype/GTestResultParser.java b/test_framework/com/android/tradefed/testtype/GTestResultParser.java
index dcba424..16cf9b0 100644
--- a/test_framework/com/android/tradefed/testtype/GTestResultParser.java
+++ b/test_framework/com/android/tradefed/testtype/GTestResultParser.java
@@ -17,6 +17,7 @@
import com.android.ddmlib.IShellOutputReceiver;
import com.android.ddmlib.MultiLineReceiver;
+import com.android.tradefed.invoker.tracing.CloseableTraceScope;
import com.android.tradefed.log.LogUtil.CLog;
import com.android.tradefed.metrics.proto.MetricMeasurement.Metric;
import com.android.tradefed.result.FailureDescription;
@@ -100,6 +101,7 @@
private int mNumTestsExpected = 0;
private long mTotalRunTime = 0;
private boolean mTestInProgress = false;
+ private CloseableTraceScope mMethodScope = null;
private boolean mTestRunInProgress = false;
private final String mTestRunName;
private final Collection<ITestInvocationListener> mTestListeners;
@@ -412,12 +414,10 @@
return mTestInProgress;
}
- /**
- * Set state to indicate we've started running a test.
- *
- */
- private void setTestStarted() {
+ /** Set state to indicate we've started running a test. */
+ private void setTestStarted(TestDescription testId) {
mTestInProgress = true;
+ mMethodScope = new CloseableTraceScope(testId.toString());
}
/**
@@ -426,6 +426,10 @@
*/
private void setTestEnded() {
mTestInProgress = false;
+ if (mMethodScope != null) {
+ mMethodScope.close();
+ mMethodScope = null;
+ }
}
/**
@@ -591,7 +595,7 @@
for (ITestInvocationListener listener : mTestListeners) {
listener.testStarted(testId, testResult.mStartTimeMs);
}
- setTestStarted();
+ setTestStarted(testId);
}
/**