summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjustinlin@chromium.org <justinlin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-01 06:42:15 +0000
committerjustinlin@chromium.org <justinlin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-06-01 06:42:15 +0000
commitf51d035dbfa453b1de1e4bbb4f4b58424a50a2d7 (patch)
treea6f261b0618cfda63dd5a0e5303622e361056041
parentd3cc8149ec18e670f5ad6cc64eadcb0f67729ab6 (diff)
downloadchromium_src-f51d035dbfa453b1de1e4bbb4f4b58424a50a2d7.zip
chromium_src-f51d035dbfa453b1de1e4bbb4f4b58424a50a2d7.tar.gz
chromium_src-f51d035dbfa453b1de1e4bbb4f4b58424a50a2d7.tar.bz2
Revert 203587 "Move CheckInstall to device status and fail on lo..."
Broke android tests. > Move CheckInstall to device status and fail on low install speed and battery. > > Removes the recently added CheckInstall step and moves the checking to the > device status check step. Recently, devices will install very slowly causing > tests to fail with device problems. We have also seen battery issues. The new > device status check step will fail if any devices install unreasonably slow > (i.e. < 800 KB/s) or have critically low battery level (i.e. < 5%). > > BUG=230970, 224004, 242237 > > Review URL: https://chromiumcodereview.appspot.com/16110005 TBR=navabi@google.com Review URL: https://codereview.chromium.org/16299003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@203594 0039d316-1c4b-4281-b951-d872f2087c98
-rwxr-xr-xbuild/android/buildbot/bb_device_steps.py12
-rwxr-xr-xbuild/android/device_status_check.py28
2 files changed, 16 insertions, 24 deletions
diff --git a/build/android/buildbot/bb_device_steps.py b/build/android/buildbot/bb_device_steps.py
index 6ec9c87..f9e2883 100755
--- a/build/android/buildbot/bb_device_steps.py
+++ b/build/android/buildbot/bb_device_steps.py
@@ -162,6 +162,15 @@ def RunChromeDriverTests():
RunCmd(['chrome/test/chromedriver/run_buildbot_steps.py',
'--android-package=%s' % constants.CHROMIUM_TEST_SHELL_PACKAGE])
+
+def CheckInstall():
+ """Build bot step to see if adb install works on attached devices. """
+ buildbot_report.PrintNamedStep('Check device install')
+ # This step checks if apks can be installed on the devices.
+ args = ['--apk', 'build/android/CheckInstallApk-debug.apk']
+ RunCmd(['build/android/adb_install_apk.py'] + args, halt_on_failure=True)
+
+
def InstallApk(options, test, print_step=False):
"""Install an apk to all phones.
@@ -277,6 +286,9 @@ def MainTestWrapper(options):
target = options.factory_properties.get('target', 'Debug')
RunCmd(['build/android/provision_devices.py', '-t', target])
+ # Check to see if devices can install apks.
+ CheckInstall()
+
if options.install:
test_obj = INSTRUMENTATION_TESTS[options.install]
InstallApk(options, test_obj, print_step=True)
diff --git a/build/android/device_status_check.py b/build/android/device_status_check.py
index 3900257..15ab493 100755
--- a/build/android/device_status_check.py
+++ b/build/android/device_status_check.py
@@ -24,8 +24,7 @@ def DeviceInfo(serial):
serial: The serial of the attached device to construct info about.
Returns:
- Tuple of device type, build id, report as a string, error messages, and
- boolean indicating whether or not device can be used for testing.
+ Tuple of device type, build id and report as a string.
"""
def AdbShellCmd(cmd):
@@ -39,13 +38,6 @@ def DeviceInfo(serial):
setup_wizard_disabled = AdbShellCmd(
'getprop ro.setupwizard.mode') == 'DISABLED'
battery = AdbShellCmd('dumpsys battery')
- install_output = GetCmdOutput(['build/android/adb_install_apk.py', '--apk',
- 'build/android/CheckInstallApk-debug.apk'])
- install_speed_found = re.findall('(\d+) KB/s', install_output)
- if install_speed_found:
- install_speed = int(install_speed_found[0])
- else:
- install_speed = 'Unknown'
if 'Error' in battery:
ac_power = 'Unknown'
battery_level = 'Unknown'
@@ -63,22 +55,17 @@ def DeviceInfo(serial):
'| grep Device'
"| awk '{print $4}'")[-6:],
' Wifi IP: %s' % AdbShellCmd('getprop dhcp.wlan0.ipaddress'),
- ' Install Speed: %s KB/s' % install_speed,
'']
errors = []
if battery_level < 5:
- errors += ['Device critically low in battery. Do not use for testing.']
+ errors += ['Device critically low in battery.']
if not setup_wizard_disabled:
errors += ['Setup wizard not disabled. Was it provisioned correctly?']
if device_product_name == 'mantaray' and ac_power != 'true':
errors += ['Mantaray device not connected to AC power.']
- if install_speed < 800:
- errors += ['Device install speed too low. Do not use for testing.']
- use_device = (battery_level != 'Unknown' and battery_level >= 5 and
- install_speed != 'Unknown' and install_speed >= 800)
- return device_type, device_build, '\n'.join(report), errors, use_device
+ return device_type, device_build, '\n'.join(report), errors
def CheckForMissingDevices(options, adb_online_devs):
@@ -180,8 +167,7 @@ def main():
devices = android_commands.GetAttachedDevices()
types, builds, reports, errors = [], [], [], []
if devices:
- types, builds, reports, errors, use_device_lst = zip(*[DeviceInfo(dev)
- for dev in devices])
+ types, builds, reports, errors = zip(*[DeviceInfo(dev) for dev in devices])
err_msg = CheckForMissingDevices(options, devices) or []
@@ -203,12 +189,6 @@ def main():
print msg
SendDeviceStatusAlert(msg)
- if False in use_device_lst:
- # TODO(navabi): Build fails on device status check step if there exists any
- # devices with critically low battery or install speed. Remove those devices
- # from testing, allowing build to continue with good devices.
- return 1
-
if not devices:
return 1