commit | 6f2b47d606abb87d2a97ef14fcc65fdaf6d3eb49 | [log] [tgz] |
---|---|---|
author | Frederick Mayle <fmayle@google.com> | Thu May 30 15:30:06 2024 -0700 |
committer | Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com> | Fri May 31 00:29:24 2024 +0000 |
tree | d92b1df7d304c7ac2bb67976ba71861ae8dbc267 | |
parent | acebf2dca68c1130d46ff2d162364dedea7a018a [diff] |
fix NullPointerException in RemoteAndroidVirtualDevice.getDeviceDescriptor I saw the following exception when running a test. java.lang.NullPointerException: Cannot invoke "com.android.tradefed.command.remote.DeviceDescriptor.getSerial()" because "descriptor" is null at com.android.tradefed.device.cloud.RemoteAndroidVirtualDevice.getDeviceDescriptor(RemoteAndroidVirtualDevice.java:76) at com.android.tradefed.device.NativeDevice.getDeviceDescriptor(NativeDevice.java:5414) at com.android.tradefed.device.connection.AdbSshConnection.restoreSnapshotGce(AdbSshConnection.java:807) at com.android.tradefed.device.internal.DeviceSnapshotFeature.restoreSnapshotGce(DeviceSnapshotFeature.java:238) at com.android.tradefed.device.internal.DeviceSnapshotFeature.restoreSnapshot(DeviceSnapshotFeature.java:190) at com.android.tradefed.device.internal.DeviceSnapshotFeature.execute(DeviceSnapshotFeature.java:109) at com.android.tradefed.service.TradefedFeatureServer.createResponse(TradefedFeatureServer.java:186) at com.android.tradefed.service.TradefedFeatureServer.triggerFeature(TradefedFeatureServer.java:115) at com.proto.tradefed.feature.TradefedInformationGrpc$MethodHandlers.invoke(TradefedInformationGrpc.java:228) at io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:182) at io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:346) at io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:860) at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:133) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Test: m tradefed Change-Id: I1f431db6736c5ea9048c7fcac90ac116f47c7a37
TF is a test harness used to drive Android automated testing. It runs on test hosts and monitors the connected devices, handling test scheduling & execution and device management.
Other test harnesses like Compatibility Test Suite (CTS) and Vendor Test Suite (VTS) use TF as a basis and extend it for their particular needs.
1. Create your change in Gerrit 2. Add the reviewer named "Tradefed Codereview" (email: tradefed-codereview@tradefederation.google.com.iam.gserviceaccount.com) 3. Review the code review guidance at go/tf-guidelines and go/tradefed-code-reviews 4. GWSQ should add a couple of people from the team to review your code and give feedback.
More information at: https://source.android.com/docs/core/tests/tradefed/
See more details about Tradefed Architecture at: https://source.android.com/docs/core/tests/tradefed/architecture
If you are a tests writer you should start looking in the test_framework/ component which contains everything needed to write a tests in Tradefed.