michael@0: Robocop Mochitest michael@0: ================= michael@0: michael@0: *Robocop Mochitest* tests run on Native Android builds marked with an michael@0: 'rc' in TBPL. These are Java based tests which run from the mochitest michael@0: harness and generate similar log files. These are designed for michael@0: testing the native UI of Android devices by sending events to the michael@0: front end. michael@0: michael@0: See the documentation at michael@0: https://wiki.mozilla.org/Auto-tools/Projects/Robocop/WritingTests for michael@0: details. michael@0: michael@0: Development cycle michael@0: ----------------- michael@0: michael@0: To deploy the robocop APK to your device and start the robocop test michael@0: suite, use:: michael@0: michael@0: make -C $OBJDIR mochitest-robocop michael@0: michael@0: To run a specific test case, such as ``testLoad``:: michael@0: michael@0: make -C $OBJDIR mochitest-robocop TEST_PATH=testLoad michael@0: michael@0: The Java files in ``mobile/android/base/tests`` are dependencies of the michael@0: robocop APK built by ``build/mobile/robocop``. If you modify Java files michael@0: in ``mobile/android/base/tests``, you need to rebuild the robocop APK michael@0: with:: michael@0: michael@0: mach build build/mobile/robocop michael@0: michael@0: Changes to ``.html``, ``.css``, ``.sjs``, and ``.js`` files in michael@0: ``mobile/android/base/tests`` do not require rebuilding the robocop michael@0: APK -- these changes are always 'live', since they are served by the michael@0: mochitest HTTP server and downloaded each test run by your device. michael@0: michael@0: ``mach package`` does build and sign a robocop APK, but ``make michael@0: mochitest-robocop`` does not use it. (This signed APK is used to test michael@0: signed releases on the buildbots). michael@0: michael@0: As always, changes to ``mobile/android/base``, ``mobile/android/chrome``, michael@0: ``mobile/android/modules``, etc., require:: michael@0: michael@0: mach build mobile/android/base && mach package && mach install michael@0: michael@0: as usual.