当前位置: 首页 > 软件库 > 开发工具 > 测试工具 >

Mobly

移动设备测试框架
授权协议 Apache
开发语言 Python
所属分类 开发工具、 测试工具
软件类型 开源软件
地区 不详
投 递 者 颜思淼
操作系统 跨平台
开源组织 Google
适用人群 未知
 软件概览

Mobly 是一个 Python 开发的测试框架,支持要求多设备、复杂环境以及自定义硬件设置的测试案例。

使用场景示例:

  • 两个设备间的 P2P 数据传输
  • 三个电话之间的会议呼叫
  • 可穿戴设备和电话的交互
  • 物联网设备的交互测试
  • RF 功能测试
  • 通过对电话、基站和 eNBs 的控制进行 LTE 网络测试

Mobly 可以支持多种类型的设备和装备,而且可以很方便的支持你自己的设备。Mobly 包含对常规设备的控制库,如 Android 设备。

不过 Mobly 虽然挂在 Google 账号下,却不是 Google 的官方产品。

兼容性

Mobly 兼容 python 3.4+ 和 python 2.7. 不过 Python 2.7 的支持将在 2019 年底废弃。

平台支持:

  • Ubuntu 14.04+
  • MacOS 10.6+
  • Windows 7+

系统依赖

  • adb (1.0.36+ recommended)
  • python2.7 or python3.4+
  • python-setuptools

如果你使用 Python3, 请相应使用  pip3  和  python3  (or python3.x) 

示例测试代码:

安装

可以使用 pip 安装

pip install mobly

或者下载源码进行编译:

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

上述命令可能需要 sudo 环境来获取相应权限。

示例测试代码:

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()

运行测试的方法:

$ python hello_world_test.py -c sample_config.yml
 相关资料
  • 我的目标是有一个移动网站(手机和平板电脑)和一个响应桌面网站,建立在Wordpress上。我想最简单的方法来实现傻瓜证明设备检测。 移动网站将会有很多只对触摸设备有益的功能,并将为手机和平板电脑定制设计。桌面网站将完全不同(有相同的页面,但有额外的内容),并将充分响应,以防任何设备逃过检测。 我有一个可以检测触摸设备并重定向到另一个页面的衬里,但它似乎太简单了,不是一个简单的设备检测方法。这是多么

  • 为了更好地为移动设备服务,HTML 5推出了一系列针对移动设备的API。 Viewport Geolocation API getCurrentPosition方法 watchPosition方法和clearWatch方法 Vibration API Luminosity API Orientation API 参考链接 Viewport Viewport指的是网页的显示区域,也就是不借助滚动条的

  • 问题内容: 我们一直在计划使用Selenium对我们的Web应用程序进行UI测试。我们现在有第二个想法。据我所知,Android和iOS设备的网络驱动程序并未使用用户会使用的实际浏览器。相反,他们使用的WebView可能与实际的浏览器相似,也可能不同。我看过许多关于Android的报告,这些报告似乎表明WebView的行为不同于内置浏览器和Chrome的行为,而Chrome现在是某些设备上的默认设

  • 但我想显示Android谷歌Play徽章,如果它是Android和苹果商店徽章,如果它是iOS,但出于某种原因,下面的代码不工作。有人能告诉我我做错了什么吗?

  • 本文向大家介绍javascript检测移动设备横竖屏,包括了javascript检测移动设备横竖屏的使用技巧和注意事项,需要的朋友参考一下 如何判断 移动设备提供了两个对象,一个属性,一个事件: (1)window.orientation   属于window对象上一个属性;共有三个值 :0为竖屏模式(portrait),90为向左反转变为横屏模式(landscape),-90为向右反转变为横屏模

  • 问题内容: 谁能帮我这个。 我想检测Iphone,BB,andriod等设备以及浏览器,以应用其特定的CSS使其液化或调整其分辨率。 在移动浏览器上,andriod和Iphone是否存在分辨率差异问题或CSS问题,因为我计划为这2个用户使用相同的CSS,因为我知道它们默认使用相同的浏览器浏览器。 问题答案: 尝试使用并检查字段。当然,只有在php.ini中设置了路径时,它才可能有所帮助。如果没有,