Bug 1472311 - Use android_common.py for android-hw mozharness config; r=bc

This commit is contained in:
Geoff Brown 2018-07-03 07:33:47 -06:00
Родитель ba2bbfe318
Коммит b61f4883c9
8 изменённых файлов: 19 добавлений и 331 удалений

Просмотреть файл

@ -12,6 +12,7 @@ job-defaults:
- android/android_common.py - android/android_common.py
- android/androidarm_4_3.py - android/androidarm_4_3.py
android-hw.*: android-hw.*:
- android/android_common.py
- android/android_hw.py - android/android_hw.py
linux.*: linux.*:
- unittests/linux_unittest.py - unittests/linux_unittest.py

Просмотреть файл

@ -21,6 +21,7 @@ job-defaults:
- android/android_common.py - android/android_common.py
- android/androidarm_4_3.py - android/androidarm_4_3.py
android-hw.*: android-hw.*:
- android/android_common.py
- android/android_hw.py - android/android_hw.py
linux.*: linux.*:
- unittests/linux_unittest.py - unittests/linux_unittest.py

Просмотреть файл

@ -286,6 +286,7 @@ config = {
"--log-tbpl-level=%(log_tbpl_level)s", "--log-tbpl-level=%(log_tbpl_level)s",
"--test-plugin-path=none", "--test-plugin-path=none",
"--deviceSerial=%(device_serial)s", "--deviceSerial=%(device_serial)s",
"%(xpcshell_extra)s",
], ],
}, },
"cppunittest": { "cppunittest": {

Просмотреть файл

@ -1,38 +1,12 @@
import os # mozharness configuration for Android hardware unit tests
#
# This configuration should be combined with suite definitions and other
def WebglSuite(name): # mozharness configuration from android_common.py, or similar.
return {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--screenshot-on-fail",
"--subsuite=" + name,
"--deviceSerial=%(device_serial)s",
]
}
config = { config = {
"robocop_package_name": "org.mozilla.roboexample.test", "robocop_package_name": "org.mozilla.roboexample.test",
"marionette_address": "%(device_ip)s:2828", "marionette_address": "%(device_ip)s:2828",
"marionette_test_manifest": "unit-tests.ini",
"exes": {}, "exes": {},
"log_tbpl_level": "info",
"log_raw_level": "info",
"env": { "env": {
"DISPLAY": ":0.0", "DISPLAY": ":0.0",
"PATH": "%(PATH)s", "PATH": "%(PATH)s",
@ -49,304 +23,8 @@ config = {
# from android_common.py # from android_common.py
"download_tooltool": True, "download_tooltool": True,
"download_minidump_stackwalk": True, "download_minidump_stackwalk": True,
# hostutils_manifest_path is relative to branch's root in hg.mozilla.org.
"hostutils_manifest_path": "testing/config/tooltool-manifests/linux64/hostutils.manifest",
"tooltool_cache": "/builds/worker/tooltool_cache",
"tooltool_servers": ['https://api.pub.build.mozilla.org/tooltool/'], "tooltool_servers": ['https://api.pub.build.mozilla.org/tooltool/'],
# minidump_tooltool_manifest_path is relative to workspace/build/tests/ # minidump_tooltool_manifest_path is relative to workspace/build/tests/
"minidump_tooltool_manifest_path": "config/tooltool-manifests/linux64/releng.manifest", "minidump_tooltool_manifest_path": "config/tooltool-manifests/linux64/releng.manifest",
"find_links": [ "xpcshell_extra": "--remoteTestRoot=/data/local/tests",
"https://pypi.pub.build.mozilla.org/pub",
],
"pip_index": False,
"suite_definitions": {
"mochitest": {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--extra-profile-file=fonts",
"--extra-profile-file=hyphenation",
"--screenshot-on-fail",
"--deviceSerial=%(device_serial)s",
],
},
"mochitest-webgl1-core": WebglSuite("webgl1-core"),
"mochitest-webgl2-core": WebglSuite("webgl2-core"),
"mochitest-webgl1-ext": WebglSuite("webgl1-ext"),
"mochitest-webgl2-ext": WebglSuite("webgl2-ext"),
"mochitest-webgl2-deqp": WebglSuite("webgl2-deqp"),
"mochitest-chrome": {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--extra-profile-file=fonts",
"--extra-profile-file=hyphenation",
"--screenshot-on-fail",
"--flavor=chrome",
"--deviceSerial=%(device_serial)s",
],
},
"mochitest-plain-gpu": {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--screenshot-on-fail",
"--subsuite=gpu",
"--deviceSerial=%(device_serial)s",
],
},
"mochitest-plain-clipboard": {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--screenshot-on-fail",
"--subsuite=clipboard",
"--deviceSerial=%(device_serial)s",
],
},
"mochitest-media": {
"run_filename": "runtestsremote.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--screenshot-on-fail",
"--chunk-by-runtime",
"--subsuite=media",
"--deviceSerial=%(device_serial)s",
],
},
"robocop": {
"run_filename": "runrobocop.py",
"testsdir": "mochitest",
"options": [
"--app=%(app)s",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--certificate-path=%(certs_path)s",
"--symbols-path=%(symbols_path)s",
"--quiet",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--robocop-apk=../../robocop.apk",
"--deviceSerial=%(device_serial)s",
],
},
"reftest": {
"run_filename": "remotereftest.py",
"testsdir": "reftest",
"options": [
"--app=%(app)s",
"--ignore-window-size",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--httpd-path", "%(modules_dir)s",
"--symbols-path=%(symbols_path)s",
"--extra-profile-file=fonts",
"--extra-profile-file=hyphenation",
"--suite=reftest",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--deviceSerial=%(device_serial)s",
],
"tests": ["tests/layout/reftests/reftest.list",],
},
"crashtest": {
"run_filename": "remotereftest.py",
"testsdir": "reftest",
"options": [
"--app=%(app)s",
"--ignore-window-size",
"--remote-webserver=%(remote_webserver)s",
"--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s",
"--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s",
"--httpd-path",
"%(modules_dir)s",
"--symbols-path=%(symbols_path)s",
"--suite=crashtest",
"--log-tbpl-level=%(log_tbpl_level)s",
"--deviceSerial=%(device_serial)s",
],
"tests": ["tests/testing/crashtest/crashtests.list",],
},
"jittest": {
"run_filename": "jit_test.py",
"testsdir": "jit-test/jit-test",
"options": [
"../../bin/js",
"--remote",
"-j",
"1",
"--localLib=../../bin",
"--no-slow",
"--no-progress",
"--format=automation",
"--jitflags=all",
"--deviceSerial=%(device_serial)s",
],
},
"jsreftest": {
"run_filename": "remotereftest.py",
"testsdir": "reftest",
"options": [
"--app=%(app)s",
"--ignore-window-size",
"--remote-webserver=%(remote_webserver)s", "--xre-path=%(xre_path)s",
"--utility-path=%(utility_path)s", "--http-port=%(http_port)s",
"--ssl-port=%(ssl_port)s", "--httpd-path", "%(modules_dir)s",
"--symbols-path=%(symbols_path)s",
"--extra-profile-file=jsreftest/tests/user.js",
"--suite=jstestbrowser",
"--log-tbpl-level=%(log_tbpl_level)s",
"--deviceSerial=%(device_serial)s",
],
"tests": ["../jsreftest/tests/jstests.list",],
},
"xpcshell": {
"run_filename": "remotexpcshelltests.py",
"testsdir": "xpcshell",
"install": False,
"options": [
"--xre-path=%(xre_path)s",
"--testing-modules-dir=%(modules_dir)s",
"--apk=%(installer_path)s",
"--no-logfiles",
"--symbols-path=%(symbols_path)s",
"--manifest=tests/xpcshell.ini",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--test-plugin-path=none",
"--deviceSerial=%(device_serial)s",
"--remoteTestRoot=/data/local/tests",
],
},
"cppunittest": {
"run_filename": "remotecppunittests.py",
"testsdir": "cppunittest",
"install": False,
"options": [
"--symbols-path=%(symbols_path)s",
"--xre-path=%(xre_path)s",
"--localBinDir=../bin",
"--apk=%(installer_path)s",
".",
"--deviceSerial=%(device_serial)s",
],
},
"marionette": {
"run_filename": os.path.join("harness", "marionette_harness", "runtests.py"),
"testsdir": "marionette",
"options": [
"--app=fennec",
"--package=%(app)s",
"--address=%(address)s",
"%(test_manifest)s",
"--disable-e10s",
"--gecko-log=%(gecko_log)s",
"--log-raw=%(raw_log_file)s",
"--log-raw-level=%(log_raw_level)s",
"--log-errorsummary=%(error_summary_file)s",
"--log-tbpl-level=%(log_tbpl_level)s",
"--symbols-path=%(symbols_path)s",
"--startup-timeout=300",
"--device=%(device_serial)s",
],
},
"geckoview": {
"run_filename": "rungeckoview.py",
"testsdir": "mochitest",
"options": [
"--utility-path=%(utility_path)s",
"--symbols-path=%(symbols_path)s",
"--deviceSerial=%(device_serial)s",
],
},
"geckoview-junit": {
"run_filename": "runjunit.py",
"testsdir": "mochitest",
"options": [
"--certificate-path=%(certs_path)s",
"--remote-webserver=%(remote_webserver)s",
"--symbols-path=%(symbols_path)s",
"--utility-path=%(utility_path)s",
"--deviceSerial=%(device_serial)s",
],
},
}, # end suite_definitions
} }

Просмотреть файл

@ -31,5 +31,5 @@ config = {
"name": "test-1", "name": "test-1",
"device_id": "emulator-5554", "device_id": "emulator-5554",
}, },
"marionette_extra": "--emulator" "marionette_extra": "--emulator",
} }

Просмотреть файл

@ -31,5 +31,5 @@ config = {
"name": "test-1", "name": "test-1",
"device_id": "emulator-5554", "device_id": "emulator-5554",
}, },
"marionette_extra": "--emulator" "marionette_extra": "--emulator",
} }

Просмотреть файл

@ -440,6 +440,7 @@ class AndroidEmulatorTest(TestingMixin, BaseScript, MozbaseMixin, CodeCoverageMi
# marionette options # marionette options
'address': c.get('marionette_address'), 'address': c.get('marionette_address'),
'marionette_extra': c.get('marionette_extra', ''), 'marionette_extra': c.get('marionette_extra', ''),
'xpcshell_extra': c.get('xpcshell_extra', ''),
'test_manifest': os.path.join( 'test_manifest': os.path.join(
dirs['abs_marionette_tests_dir'], dirs['abs_marionette_tests_dir'],
self.config.get('marionette_test_manifest', '') self.config.get('marionette_test_manifest', '')
@ -458,7 +459,9 @@ class AndroidEmulatorTest(TestingMixin, BaseScript, MozbaseMixin, CodeCoverageMi
# only query package name if requested # only query package name if requested
cmd.extend([option % {'app': self._query_package_name()}]) cmd.extend([option % {'app': self._query_package_name()}])
else: else:
cmd.extend([option % str_format_values]) option = option % str_format_values
if option:
cmd.extend([option])
if not (self.verify_enabled or self.per_test_coverage): if not (self.verify_enabled or self.per_test_coverage):
if user_paths: if user_paths:

Просмотреть файл

@ -399,6 +399,8 @@ class AndroidHardwareTest(TestingMixin, BaseScript, MozbaseMixin,
# marionette options # marionette options
'address': c.get('marionette_address') % {'device_ip': self.device_ip}, 'address': c.get('marionette_address') % {'device_ip': self.device_ip},
'gecko_log': os.path.join(dirs["abs_blob_upload_dir"], 'gecko.log'), 'gecko_log': os.path.join(dirs["abs_blob_upload_dir"], 'gecko.log'),
'marionette_extra': c.get('marionette_extra', ''),
'xpcshell_extra': c.get('xpcshell_extra', ''),
'test_manifest': os.path.join( 'test_manifest': os.path.join(
dirs['abs_marionette_tests_dir'], dirs['abs_marionette_tests_dir'],
self.config.get('marionette_test_manifest', '') self.config.get('marionette_test_manifest', '')
@ -417,7 +419,9 @@ class AndroidHardwareTest(TestingMixin, BaseScript, MozbaseMixin,
# only query package name if requested # only query package name if requested
cmd.extend([option % {'app': self._query_package_name()}]) cmd.extend([option % {'app': self._query_package_name()}])
else: else:
cmd.extend([option % str_format_values]) option = option % str_format_values
if option:
cmd.extend([option])
if user_paths: if user_paths:
cmd.extend(user_paths.split(':')) cmd.extend(user_paths.split(':'))