Report the device pre/post invocation as setup
Test: unit tests
Bug: None
Change-Id: I38e86b792ce82b90e9411ea7e6b85252bb8248c2
diff --git a/src/com/android/tradefed/invoker/InvocationExecution.java b/src/com/android/tradefed/invoker/InvocationExecution.java
index 7e422a4..c42ebb5 100644
--- a/src/com/android/tradefed/invoker/InvocationExecution.java
+++ b/src/com/android/tradefed/invoker/InvocationExecution.java
@@ -39,10 +39,10 @@
import com.android.tradefed.invoker.ExecutionFiles.FilesKey;
import com.android.tradefed.invoker.TestInvocation.Stage;
import com.android.tradefed.invoker.logger.CurrentInvocation;
+import com.android.tradefed.invoker.logger.CurrentInvocation.IsolationGrade;
import com.android.tradefed.invoker.logger.InvocationMetricLogger;
import com.android.tradefed.invoker.logger.InvocationMetricLogger.InvocationMetricKey;
import com.android.tradefed.invoker.logger.TfObjectTracker;
-import com.android.tradefed.invoker.logger.CurrentInvocation.IsolationGrade;
import com.android.tradefed.invoker.shard.IShardHelper;
import com.android.tradefed.invoker.shard.TestsPoolPoller;
import com.android.tradefed.log.ITestLogger;
@@ -376,6 +376,7 @@
CLog.i("--disable-invocation-setup-and-teardown, skipping pre-invocation setup.");
return;
}
+ long start = System.currentTimeMillis();
customizeDevicePreInvocation(config, context);
for (String deviceName : context.getDeviceConfigNames()) {
ITestDevice device = context.getDevice(deviceName);
@@ -386,6 +387,9 @@
}
device.preInvocationSetup(context.getBuildInfo(deviceName), context.getAttributes());
}
+ // Also report device pre invocation into setup
+ InvocationMetricLogger.addInvocationPairMetrics(
+ InvocationMetricKey.SETUP_PAIR, start, System.currentTimeMillis());
}
/**
@@ -407,10 +411,14 @@
CLog.i("--disable-invocation-setup-and-teardown, skipping post-invocation teardown.");
return;
}
+ long start = System.currentTimeMillis();
for (String deviceName : context.getDeviceConfigNames()) {
ITestDevice device = context.getDevice(deviceName);
device.postInvocationTearDown(exception);
}
+ // Also report device post invocation into teardown
+ InvocationMetricLogger.addInvocationPairMetrics(
+ InvocationMetricKey.TEARDOWN_PAIR, start, System.currentTimeMillis());
}
/** Runs the {@link IMultiTargetPreparer} specified. */