哪些技术规范与创建家庭UnitTest实验室相关?

时间:2017-09-13 17:37:34

标签: xamarin xamarin.ios xamarin-test-cloud mobile-center visual-studio-app-center

我需要针对物理移动设备运行测试,并且需要同时将单元测试部署到许多并发设备。

从概念上讲,这类似于Xamarin移动测试云或微软移动云...但我需要一个内部部署的等价物,以便我可以测试蓝牙和GPS功能

我正在测试所有连接到同一USB集线器的7到14个物理设备。

问题

  • 单个Mac / Windows机器可通过一个USB端口与多少台设备进行通信?

  • 选择硬件时需要注意哪些功耗因素?

这是我想象的visual example,但是这个设备专注于充电,而不是将USB背板连接到计算机。

1 个答案:

答案 0 :(得分:2)

每个USB控制器你可以有127个设备(128减去控制器),我不是说你可以同时让127个设备与主机通信并保持任何类型的数据吞吐量,这是一个不同的故事......

许多设备的核心USB问题是功耗。我们使用特殊的Y电缆,即使使用所谓的" powered"也只有数据侧和仅电源侧。 USB集线器。

这样做的非常好的电缆通常是通过迎合发烧友的公司找到的,因此通常非常昂贵并且工作得很好但是对于这种用途来说太过分了。 也避免了廉价的Y型电缆,其中数据专用方是“未接地”#34;因为您将有数据传输失败。低质量的电缆会导致数据吞吐量下降,让你在圈子里跑来跑去追逐测试失败。

消费者外部USB集线器不会产生相同的功率输出和每个端口的同时吞吐量。虽然大多数人会同时使用一个/两个设备进行通话,但是当4-8个设备都在说话时,许多设备都会失败。同时尝试级联它们以增加端口数量可能会导致整个链路出现故障。确保您有可以从中购买的良好退货政策。

您没有说明测试框架,而是一些Appium信息:

对于基于Appium的Android测试,我使用了以下组合:

  • Android和LT; -USB->主机(ADB)
    • 8个设备大约是可靠的同时(双向)测试的门槛
  • Android和LT; -Wifi-> AP< -Host(ADB)
    • DHCP服务器处理通过MAC地址为Android设备分配IP,因此我们可以创建端口到IP的静态映射,以便通过adb重新映射
    • 每个Window服务器/主机运行的8个同时Appium服务器(因此设备)是关于预期的内容
    • 适用于每专用 AP约32/64台设备。
      • 请记住,AP必须与设备相距约4/5英尺才能实现正确的信号衰减
      • 移动云数据中心使用EMI /法拉第笼来隔离每个移动设备机架,其中每个机架中安装了多个服务器,AP和设备
  • Android和LT; -USB2Ethernet< -Host(ADB)
    • 并非所有设备都支持OTG,因此这并不总是一种选择,但效果很好。
    • 需要DHCP服务器,就像Android<-Wifi->AP安装程序
    • 一样

iOS是一种完全不同的蠕虫:

  • 连接到Mac的4台iOS设备实现了可靠的结果。
  • 请记住,主机上的每个Appium服务器都会启动一个单独的Xcode Instruments。
  • Mac Minis非常适合专用的Appium测试服务器。

在GPS测试方面,模拟是最简单的方法。有顶级应用程序开发人员使用的用于GPS测试的硬件设备(地图,交通,航空电子等等),但对于临时内部设备实验室而言,购买和设置这些设备通常很昂贵(需要EMI /法拉第笼来封装设备和GPS注入器天线。

由于干扰,配对问题等原因,蓝牙在设备实验室中可能是一个大问题......有许多设备靠近竞争单个(或更多)蓝牙配件可能会使配件无法配对与任何设备。基本上蓝牙测试同时不能很好地工作,但你可以使用Appium自动开启/关闭wifi /蓝牙/飞机模式,但对于Android设备,这要求它们都是USB连接而不是adb来通过wifi将主机端口重新映射到IP地址......