Digital Lab 体系结构
Digital Lab 是提供对不同测试应用程序的移动设备访问的独立服务器。 Digital Lab 支持分布式体系结构,其中不同的测试客户端都可以与相同的 Digital Lab 服务器实例进行交互。
在本主题中:
Digital Lab 环境
下图显示了 Digital Lab 的各个组件及其之间的关系:
Digital Lab 环境由以下组件组成:
组件 | 功能 |
---|---|
Digital Lab 服务器 |
这是一个单独的 Web 服务器,用于:
|
外部 PostgreSQL 数据库 |
可以将 Digital Lab 连接到现有外部 PostgreSQL 数据库。这使您的组织可以管理和利用现有的 DB 资源。 在安装过程中指定此选项。有关详细信息,请参阅 Digital Lab - Windows 安装或 Digital Lab- Linux 安装。 |
连接器 |
连接器是用于将设备连接到 Digital Lab 的轻量级软件,可以与服务器 (嵌入式连接器) 一起安装,也可以作为独立组件安装。可以在分布式位置的多台计算机上或在测试工具计算机上安装连接器。有关更多详细信息,请参阅安装 Windows 计算机上的连接器、安装连接器在 Linux 计算机上或安装 the connector on a Mac Machine。 连接器管理到设备的物理 USB 连接以及设备顶部的逻辑状态机。它映射端口以通过 USB 连接到设备,并管理从设备到工具的远程屏幕查看器流。它从 USB 存储库接收生命周期事件,如设备已连接或设备已断开连接、代理已完成安装以及代理已启动。它将这些事件传输到 Digital Lab 服务器,以将设备添加到池。连接器还负责在设备上安装和卸载应用程序。 |
通过连接器访问测试设备 |
这些是运行测试的设备 (智能手机/平板电脑)。以下应用程序将复制到测试设备:
|
SV 实验室 |
UFT Digital Lab 仅限。 SV (Service Virtualization)实验室是一个环境虚拟化工具包,用于在否则难以测试的区域虚拟化实际服务。SV 实验室部署在 Digital Lab 内,可用于运行 Service Virtualization 仿真。 |
NV Test Manager |
Network Virtualization 是用于测试在不同网络条件下运行的个应用程序的可选组件。Network virtualization 通过在软件测试过程中对测试环境施加损伤和约束来模拟真实世界条件,从而提高软件测试的准确性。 仅支持内部部署设备。 |
连接器部署方案
连接器是用于将设备连接到 Digital Lab 的轻量级软件。作为安装过程的一部分,您可以选择在 Digital Lab 服务器计算机上安装嵌入式连接器,该嵌入式连接器会自动配置为与本地服务器协同工作。但是,连接器也可以作为独立组件安装在其他计算机上,如开发人员或测试工程师的计算机。通常,使用以下方案的组合:
方案 | 描述 | 优点 |
---|---|---|
中心设备集线器 | 连接到 Digital Lab 服务器计算机上连接器的设备的中央实验室。 | 效率。避免设置和管理设备的任务重复。 |
分布式设备集线器 | 连接器安装在多个位置 (现场/场外/全局分散) 的计算机上。 |
可缩放。可以根据需要添加新实验室。 |
携带自己的设备 | 连接器安装在开发人员/测试工程师的计算机上。 |
支持在设备上对应用程序进行上机测试。 |
网络连接
下图表示更详细的视图,重点是 Digital Lab 服务器的物理部署。还显示了不同的协议和使用的端口。
客户端工具和 Digital Lab 服务器连接
常用的客户端工具有 UFT One、LoadRunner、Sprinter、 BPM、UFT 开发人员 和 Appium 脚本。
测试工具客户端连接到 Digital Lab 服务器以执行以下操作:
- 用于管理设备和通过 HTTP/HTTPS 上载应用程序的用户界面 (UI)。
- 用于测试和管理的 API (JSON 命令),通过 WebSocket (WS) 发送。
- 远程屏幕查看器客户端。
Digital Lab 服务器和连接器连接
连接器与 Digital Lab 服务器建立 WebSocket (WS) 连接,允许从连接器到服务器的双向异步通信,反之亦然 (在同一个套接字上)。API 调用和文件通过 WS 传递。
测试工具、连接器和设备连接
连接器将端口映射到移动设备,以便使用移动库 (Android 调试桥 (ADB)、[a-zA-Z]{1,}设备库) 进行 API 通信。它还会打开到代理的 Windows 套接字连接。连接器为远程屏幕查看器映射端口正向。在远程操作设备时,连接器会将远程屏幕查看器直接暴露给该工具,以最大限度地缩短滞后时间。设备上的 Digital Lab 代理侦听 Windows 套接字端口。
高可用性
此功能仅在 UFT Digital Lab 中受支持。
下图显示了 Digital Lab 主动 - 被动高可用性环境:
备注两台服务器应始终启动并运行。其中一台服务器将自身标记为活动,另一台标记为被动。负载平衡将所有请求重定向到活动服务器。当活动服务器出现故障时,被动服务器将变为活动,负载平衡器会开始将所有请求重定向到该服务器。确保监视并重新启动发生故障的服务器,使其变为被动服务器。
带 Amazon Device Farm 的界面
UFT Digital Lab 允许您使用基于云的 Amazon Device Farm 在各种设备上运行测试。
在下图中,可以看到 UFT Digital Lab 连接器如何与 AWS Device Farm.
有关如何为此集成设置 Digital Lab 的详细信息,请参阅 AWSDevice Farm 集成。