Mobly移動設(shè)備測試框架
Mobly 是一個 Python 開發(fā)的測試框架,支持要求多設(shè)備、復(fù)雜環(huán)境以及自定義硬件設(shè)置的測試案例。
使用場景示例:
- 兩個設(shè)備間的 P2P 數(shù)據(jù)傳輸
- 三個電話之間的會議呼叫
- 可穿戴設(shè)備和電話的交互
- 物聯(lián)網(wǎng)設(shè)備的交互測試
- RF 功能測試
- 通過對電話、基站和 eNBs 的控制進(jìn)行 LTE 網(wǎng)絡(luò)測試
Mobly 可以支持多種類型的設(shè)備和裝備,而且可以很方便的支持你自己的設(shè)備。Mobly 包含對常規(guī)設(shè)備的控制庫,如 Android 設(shè)備。
不過 Mobly 雖然掛在 Google 賬號下,卻不是 Google 的官方產(chǎn)品。
兼容性
Mobly 兼容 python 3.4+ 和 python 2.7. 不過 Python 2.7 的支持將在 2019 年底廢棄。
平臺支持:
- Ubuntu 14.04+
- MacOS 10.6+
- Windows 7+
系統(tǒng)依賴
- adb (1.0.36+ recommended)
- python2.7 or python3.4+
- python-setuptools
如果你使用 Python3, 請相應(yīng)使用 pip3 和 python3 (or python3.x)
示例測試代碼:
安裝
可以使用 pip 安裝
pip install mobly
或者下載源碼進(jìn)行編譯:
git clone https://github.com/google/mobly.git cd mobly python setup.py install
上述命令可能需要 sudo 環(huán)境來獲取相應(yīng)權(quán)限。
示例測試代碼:
from mobly import base_test
from mobly import test_runner
from mobly.controllers import android_device
class HelloWorldTest(base_test.BaseTestClass):
def setup_class(self):
# Registering android_device controller module declares the test's
# dependency on Android device hardware. By default, we expect at
# least one object is created from this.
self.ads = self.register_controller(android_device)
self.dut = self.ads[0]
# Start Mobly Bundled Snippets (MBS).
self.dut.load_snippet('mbs', 'com.google.android.mobly.snippet.bundled')
def test_hello(self):
self.dut.mbs.makeToast('Hello World!')
if __name__ == '__main__':
test_runner.main()
運(yùn)行測試的方法:
$ python hello_world_test.py -c sample_config.yml評論
圖片
表情
