使用 Docker 活动进行测试
相关项: API 测试
使用 UFT One 的本机 API 测试功能来测试存储在远程 Docker 容器中的应用程序。
Docker 活动允许 UFT One 管理 Docker,从 Docker 注册表下载镜像并基于这些镜像运行容器。Docker 活动在 Docker 节点下的“工具箱”窗格中可用。
UFT One 使用与 Docker 打包在一起的应用程序,如下所示:
-
UFT One 首先向 Docker 发送一个请求,以从 Docker 注册表下载 (拉取) 镜像。
如果您对希望 Docker 容器运行的方式有特殊的配置,请创建一个容器并使用该配置加载 JSON 文件。
-
Docker 基于下载的镜像来启动容器。
-
当应用程序运行时,UFT One 在应用程序上执行其他测试步骤。
-
当测试运行完成时,UFT One 向 Docker 发送一个请求,并附有一个停止容器的请求。
有关 Docker 的一般信息,请参阅 Docker 文档。
先决条件:
在 UFT One 中运行 Docker 活动之前,必须设置 Docker 服务器。这是您安装和设置 Docker 的计算机。然后,它可以从 Docker 注册表拉取 Docker 镜像。
有关设置 Docker 服务器的详细信息,请参阅 Docker 文档。
配置端口
在测试之前,请在“运行镜像”或“创建容器”活动中配置端口,以将容器端口映射到 Docker 主机端口。
这使应用程序可以访问容器内部的映射端口。
更新属性,如下所示:
运行镜像活动 |
在“属性”窗格的“端口绑定”属性中配置端口。 有关详细信息,请参阅运行镜像。 |
创建容器活动 |
在请求的 JSON 主体内指定端口绑定,然后将其加载到活动中。 有关详细信息,请参阅创建容器。 |
提示: 要使端口可以从容器外部访问,请使用镜像的 Docker 文件中的 'EXPOSE' 参数。
从 Docker 注册表拉取镜像
-
在“工具箱”窗格中,从 Docker 节点中,将“拉取镜像”活动添加到画布。
-
在“属性”窗格的“输入/检查点”选项卡 中,输入 Docker 容器的访问详细信息:
-
将要从 Docker 注册表拉取 Docker 镜像的 Docker 服务器的 URL
-
从 Docker 注册表拉至 Docker 服务器的镜像
-
用于标识镜像的标记 - 可选
-
-
如果需要,添加检查点以验证活动:
-
摘要: 指定镜像的摘要标识符,以确保导入正确的镜像
-
状态: 镜像导入操作的状态
-
创建容器
如果您有特殊的自定义参数或需要对容器进行高级配置,请创建自己的自定义容器。
这使您可以使用 Docker 提供的任何参数来配置容器的创建。
-
确保 Docker 镜像已经存在于 Docker 服务器上。
-
在“工具箱”窗格中,从 Docker 节点中,将“创建容器”活动添加到画布。
-
在“属性”窗格的“输入/检查点”选项卡 中,设置容器详细信息:
-
Docker 服务器的服务器 URL
-
创建的容器的容器名称。默认情况下,此参数应保持为空,因为 Docker 自动生成该值
-
-
在“高级属性”选项卡 中,单击“加载 JSON”按钮。
.json 文件主体加载了带有参数的 REST 请求,可以在创建容器时使用。
运行容器
-
在“工具箱”窗格中,从 Docker 节点中,将“启动容器”活动添加到画布。
-
在“属性”窗格的“输入/检查点”选项卡 中,设置容器详细信息:
-
Docker 服务器的服务器 URL
-
要启动的容器的容器 ID
提示: 通过将此属性链接到“创建容器”活动的“容器 ID”属性来参数化此值。
-
运行镜像
将应用程序的镜像下载到 Docker 服务器后,可以在容器上运行应用程序的镜像。
运行镜像将在其自身的容器中启动该镜像,并使用提供的命令启动指定的应用程序。
-
在“工具箱”窗格中,从 Docker 节点中,将“运行镜像”活动添加到画布。
-
在“属性”窗格的“输入/检查点”选项卡 中,提供 Docker 容器的访问详细信息:
- Docker 服务器的 URL
-
从 Docker 服务器上的 Docker 注册表运行的镜像
- 用于在 Docker 容器中运行应用程序的命令
-
在主要输入属性下的“端口绑定”行中,单击“添加”按钮 以在该步骤中添加端口绑定数组。
-
在数组中,提供以下端口:
- 容器端口: 容器内从应用程序接收输出的端口
- 主机端口: Docker 主机计算机上的端口
这些端口相互映射后,所有到达容器端口的数据都将转发到主机端口。
添加其他测试步骤
启动容器后,应用程序即可用于测试。
在“工具箱”窗格中,展开所有必需的节点,然后将活动添加到画布。
停止 Docker 容器镜像
运行完应用程序的测试后,停止当前正在运行的容器。
-
在“工具箱”窗格中,从 Docker 节点中,将“停止容器”步骤添加到画布。
-
在“属性”窗格的“输入/检查点”选项卡 中,设置用于标识要停止的容器的属性:
- Docker 服务器的 URL
- 要停止的容器的 ID
- 停止容器之前的延迟时间 (秒)