Bug: 213332752

Clone this repo:
  1. 423693a Remove Python enables identical to global defaults. by Krzysztof Kosiński · 2 months ago main-16k master
  2. d7027ce Merge remote-tracking branch 'goog/mirror-aosp-master' into bp_mobly am: ee1360ad55 by Frank Feng · 6 months ago
  3. ee1360a Merge remote-tracking branch 'goog/mirror-aosp-master' into bp_mobly by Frank Feng · 6 months ago android13-dev
  4. 20933da Add build files for Mobly lib am: 8b4837b237 am: d0d77c4902 by Julien Desprez · 6 months ago
  5. d0d77c4 Add build files for Mobly lib am: 8b4837b237 by Julien Desprez · 6 months ago

Welcome to Mobly

Mobly is a Python-based test framework that specializes in supporting test cases that require multiple devices, complex environments, or custom hardware setups.

Here are some example use cases:

  • P2P data transfer between two devices
  • Conference calls across three phones
  • Wearable device interacting with a phone
  • Internet-Of-Things devices interacting with each other
  • Testing RF characteristics of devices with special equipment
  • Testing LTE network by controlling phones, base stations, and eNBs

Mobly can support many different types of devices and equipment, and it's easy to plug your own device or custom equipment/service into Mobly.

Mobly comes with a set of libs to control common devices like Android devices.

While developed by Googlers, Mobly is not an official Google product.

Compatibility

Mobly requires python 3.6 or newer.

Mobly tests could run on the following platforms:

  • Ubuntu 14.04+
  • MacOS 10.6+
  • Windows 7+
PlatformBuild Status
LinuxLinux Build Status
WindowsWindows Build Status

System dependencies

  • adb (1.0.40+ recommended)
  • python3.6+
  • python-setuptools

To use Python3, use pip3 and python3 (or python3.x) accordingly.

Installation

You can install the released package from pip

pip install mobly

or download the source then run setup.py to use the bleeding edge:

git clone https://github.com/google/mobly.git
cd mobly
python setup.py install

You may need sudo for the above commands if your system has certain permission restrictions.

Tutorials

Mobly Snippet

The Mobly Snippet projects let users better control Android devices.

  • Mobly Snippet Lib: used for triggering custom device-side code from host-side Mobly tests. You could use existing Android libraries like UI Automator and Espresso.
  • Mobly Bundled Snippets: a set of Snippets to allow Mobly tests to control Android devices by exposing a simplified version of the public Android API suitable for testing.