android_emulator_unittest module

class android_emulator_unittest.AndroidEmulatorTest(require_config_file=False)[source]

Bases: mozharness.mozilla.blob_upload.BlobUploadMixin, mozharness.mozilla.testing.testbase.TestingMixin, mozharness.mozilla.testing.unittest.EmulatorMixin, mozharness.base.vcs.vcsbase.VCSMixin, mozharness.base.script.BaseScript, mozharness.mozilla.mozbase.MozbaseMixin

app_name = None
config_options = [[['--robocop-url'], {'action': 'store', 'dest': 'robocop_url', 'default': None, 'help': 'URL to the robocop apk'}], [['--host-utils-url'], {'action': 'store', 'dest': 'xre_url', 'default': None, 'help': 'URL to the host utils zip'}], [['--test-suite'], {'action': 'store', 'dest': 'test_suite'}], [['--adb-path'], {'action': 'store', 'dest': 'adb_path', 'default': None, 'help': 'Path to adb'}], [['--installer-url'], {'action': 'store', 'dest': 'installer_url', 'default': None, 'help': 'URL to the installer to install'}], [['--installer-path'], {'action': 'store', 'dest': 'installer_path', 'default': None, 'help': 'Path to the installer to install. This is set automatically if run with --download-and-extract.'}], [['--binary-path'], {'action': 'store', 'dest': 'binary_path', 'default': None, 'help': 'Path to installed binary. This is set automatically if run with --install.'}], [['--exe-suffix'], {'action': 'store', 'dest': 'exe_suffix', 'default': None, 'help': 'Executable suffix for binaries on this platform'}], [['--test-url'], {'action': 'store', 'dest': 'test_url', 'default': None, 'help': 'URL to the zip file containing the actual tests'}], [['--test-packages-url'], {'action': 'store', 'dest': 'test_packages_url', 'default': None, 'help': 'URL to a json file describing which tests archives to download'}], [['--jsshell-url'], {'action': 'store', 'dest': 'jsshell_url', 'default': None, 'help': 'URL to the jsshell to install'}], [['--download-symbols'], {'action': 'store', 'dest': 'download_symbols', 'type': 'choice', 'help': 'Download and extract crash reporter symbols.', 'choices': ['ondemand', 'true']}], [['--venv-path', '--virtualenv-path'], {'action': 'store', 'dest': 'virtualenv_path', 'default': 'venv', 'help': 'Specify the path to the virtualenv top level directory'}], [['--virtualenv'], {'action': 'store', 'dest': 'virtualenv', 'help': 'Specify the virtualenv executable to use'}], [['--find-links'], {'action': 'extend', 'dest': 'find_links', 'help': 'URL to look for packages at'}], [['--pip-index'], {'action': 'store_true', 'default': True, 'dest': 'pip_index', 'help': 'Use pip indexes (default)'}], [['--no-pip-index'], {'action': 'store_false', 'dest': 'pip_index', 'help': "Don't use pip indexes"}], [['--blob-upload-branch'], {'dest': 'blob_upload_branch', 'help': "Branch for blob server's metadata"}], [['--blob-upload-server'], {'dest': 'blob_upload_servers', 'action': 'extend', 'help': "Blob servers's location"}]]

Download and extract fennec APK,, host utils, and robocop (if required).

error_list = []

Install APKs on the emulator


Run the tests


If tooltool cache mechanism is enabled, the cached version is used by the fetch command. If the manifest includes an “unpack” field, tooltool will unpack all compressed archives mentioned in the manifest.


Starts the emulator


Report emulator health, then make sure that the emulator has been stopped


Check to see if the emulator can be contacted via adb, telnet, and sut, if configured. If any communication attempt fails, kill the emulator, re-launch, and re-check.

virtualenv_modules = []
virtualenv_requirements = []