tree: f504063396a99a9133431049802d989ca59756e0 [path history] [tgz]
  1. ArcAccessibilityTest/
  2. ArcAnimationPerformanceTest/
  3. ArcAppManagementTest/
  4. ArcAppValidityTest/
  5. ArcAudioTest/
  6. ArcBackupTest/
  7. ArcBlackFlashTest/
  8. ArcCameraIntentTest/
  9. ArcChromeIntentPickerTest/
  10. ArcChromeSharesheetTest/
  11. ArcChromeWebApkTest/
  12. ArcClipboardTest/
  13. ArcConfigChangesTest/
  14. ArcConnectivityTest/
  15. ArcDevicePolicyTest/
  16. ArcDockedMagnifierTest/
  17. ArcDownloadManagerTest/
  18. ArcDragSourceTest/
  19. ArcDragTargetTest/
  20. ArcErrorNotificationTest/
  21. ArcExternalStorageTest/
  22. ArcFileEditorTest/
  23. ArcGamepadTest/
  24. ArcImagePasteTest/
  25. ArcImeBlockingTest/
  26. ArcInputCompatTest/
  27. ArcInputLatencyTest/
  28. ArcInputMethodTest/
  29. ArcInputOverlayTest/
  30. ArcInstallAppWithAppListSortedTest/
  31. ArcKeyboardTest/
  32. ArcKeyCharacterMapTest/
  33. ArcLaunchIntentTest/
  34. ArcLifecycleTest/
  35. ArcLinkCapturingTest/
  36. ArcLocaleChangerTest/
  37. ArcLongPressTest/
  38. ArcManyFilesTest/
  39. ArcMediaScanPerfTest/
  40. ArcMidiClientTest/
  41. ArcMotionInputTest/
  42. ArcMouseKeyEventTest/
  43. ArcMulticastForwarderTest/
  44. ArcMultiDisplayTest/
  45. ArcNotificationTest/
  46. ArcPasspointTest/
  47. ArcPerAppDensityTest/
  48. ArcPipTest/
  49. ArcPipVideoTest/
  50. ArcPreImeKeyEventTest/
  51. ArcPrintTest/
  52. ArcQosMonitorTest/
  53. ArcQuarterSizedWindowZoomingTest/
  54. ArcQuotaProjectIdTest/
  55. ArcRandomUIElementsApp/
  56. ArcResizeLockTest/
  57. ArcSensorLatencyTest/
  58. ArcShelfIconTest/
  59. ArcSoftInputModeTest/
  60. ArcStandardizedInputTest/
  61. ArcSurfaceInsetsTest/
  62. ArcSwapTest/
  63. ArcTtsTest/
  64. ArcVpnTest/
  65. ArcWMTestApp/
  66. AssistantAndroidAppTest/
  67. build/
  68. certs/
  69. .gn
  70. BUILD.gn
  71. BUILDCONFIG.gn
  72. OWNERS
  73. README.md
android/README.md

Android projects used by Tast tests

This directory contains Android projects that are used by Tast tests. They are built at the same time the ChromeOS test image is built, and not updated by tast run command automatically.

Using an APK under the directory in Tast

Take ArcGamepadTest.apk for example.

p := s.PreValue().(arc.PreData)
a := p.ARC

if err := a.Install(ctx, arc.APKPath("ArcGamepadTest.apk")); err != nil {
  s.Fatal("Failed to install the APK: ", err)
}

Updating APKs on the device

# one time setup
setup_board --board=${BOARD}

cros_workon --board=${BOARD} start tast-local-apks-cros
emerge-${BOARD} tast-local-apks-cros
cros deploy --root=/usr/local ${DUT_IP} tast-local-apks-cros

Then you can run normal tast run command.

Finding the built APKs

In the chroot they can be found under /build/$BOARD/usr/libexec/tast/apks/local/cros

On the DUT they can be found under /usr/local/libexec/tast/apks/local/cros/

Code Styles

Please follow AOSP Java style unless there is a specific reason not to.

Currently, we have a limitation that prevents us from using any external library for building apks (b/217501318). This includes the androidx support library. All code must be written using the standard Android SDK only. If androidx or some other dependencies are needed, it’s still possible to place your source code in the ARC++ internal repository and use the prebuilt apk as external data (example). However, this is not recommended from a maintenance perspective.

About OWNERS

Tast reviewers (tast-owners@google.com) are experts on Go language and Tast tests, but not Java and Android. Thus, we have additional OWNERS for this directory to review Android and Java code.