Digital Lab 体系结构

Digital Lab 是提供对不同测试应用程序的移动设备访问的独立服务器。 Digital Lab 支持分布式体系结构,其中不同的测试客户端都可以与相同的 Digital Lab 服务器实例进行交互。

在本主题中:

Digital Lab 环境

下图显示了 Digital Lab 的各个组件及其之间的关系:

Digital Lab 环境由以下组件组成:

组件 功能
Digital Lab 服务器

这是一个单独的 Web 服务器,用于:

  • 在对移动设备的测试工具客户端调用之间进行调解,并在测试工具中提供用户界面,以便在实际移动设备上记录和运行测试。
  • 接受应用程序进行测试,并管理应用程序版本。
  • 包括存储可重用数据的 PostgreSQL 数据库。例如,已上载应用程序和连接器的元数据、证书和用户信息。
  • 为管理员提供以下用户界面 (实验室管理控制台):
    • 管理用户
    • 管理应用程序并查看其属性,例如 OS 和版本
    • 控制设备: 远程重新启动、解锁或打开设备
    • 查看和管理连接件

    • 为用户配置各种设置,如代理定义和代码注入服务

外部 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 服务器,以将设备添加到池。连接器还负责在设备上安装和卸载应用程序。

通过连接器访问测试设备

这些是运行测试的设备 (智能手机/平板电脑)。以下应用程序将复制到测试设备:

  • Digital Lab 代理,用于管理 AUT、 OS(特定应用程序之外的控件) 以及为测试工具客户端提供 UI 和远程控制的远程屏幕查看器服务器的命令。
  • AUT –应用程序在 Test 下。
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 集成

后退到顶部