使用 Kafka 活动进行测试
相关项: API 测试
本主题描述如何在 API 测试中添加和配置 Kafka 活动。
概述
使用 UFT One 的本机 API 测试功能来测试您的 Kafka 服务器。
通过 Kafka 活动,您可以测试 Kafka 服务器的主要 API 功能。您可以在 UFT One 中使用这些活动验证 Kafka 的数据交换过程,包括将消息发布到主题、在主题中使用或删除消息的过程。
Kafka 活动是相互独立的。您可以添加和配置一项或多项活动来满足您的测试目的。
先决条件:
在 UFT One 中添加 Kafka 活动之前,请执行以下操作:
-
必须设置一个“Kafka 服务器”(“Kafka 代理”)。
-
如果您的 Kafka 服务器使用 SSL 或 Kerberos 进行身份验证,请为您的测试配置身份验证设置。
身份验证模式 如何配置 SSL 身份验证 - 创建 API 测试或打开现有的 API 测试。
- 右键单击画布中的“启动”节点并选择“属性”。
-
在“属性”窗格的“测试设置” 选项卡中,在 Kafka SSL 下配置以下 SSL 设置:
UFT One 版本 2022 及更高版本-
启用 SSL: 选择“是”。
仅当您的 CA 证书由业内最受信任的证书颁发机构之一颁发时才设置此字段。
-
CA 证书路径: 可选。CA 证书文件的路径。
-
客户端公钥证书路径: 可选。公钥证书文件的路径。如果您的服务器需要客户端身份验证,则这是必填信息。
-
客户端私钥路径: 可选。私钥证书文件的路径。如果您的服务器需要客户端身份验证,则这是必填信息。
UFT One 版本 2021 R1 及更低版本将“启用 SSL”设置为“是”并指定 CA 证书的路径。
备注: 将以下属性留空。不支持以下属性:
“客户端密钥存储”、“客户端密钥存储密码”和“客户端密钥密码”
-
Kerberos 身份验证
(UFT One 版本 2023 及更高版本)
- 创建 API 测试或打开现有的 API 测试。
- 右键单击画布中的“启动”节点并选择“属性”。
-
在“属性”窗格的“测试设置” 选项卡中,在 Kafka SASL 下配置以下 SASL 设置:
-
启用 SASL: 选择“是”。
-
机制: 用于执行身份验证的机制。选择以下选项:
GSSAPI: 使用 Kerberos V5 进行身份验证的安全机制。
-
服务名称: Kafka 服务器名称。
-
运行早期版本的测试
在 UFT One 版本 2022 及更高版本上运行在 2022 之前的 UFT One 版本中创建的测试时:
在运行配置了 SSL 身份验证的测试之前,请执行以下操作:
-
打开“<UFT One 安装文件夹>\bin”文件夹中的 UFT.exe.config 文件。
-
将以下行添加到文件的 <appSettings> 部分:
<add key="ValidateWithSchema" value="false"/>
将消息发布到 Kafka 主题
此活动允许将消息发布到 Kafka 主题上的某个分区。
在该过程中,UFT One 充当生产者来测试消息是否可以成功发送到 Kafka 服务器上正确主题的正确分区。
将消息发布到 Kafka 主题
- 创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
- 将 “将消息发布到 Kafka 主题”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
您可以输入 Kafka 服务器上托管的现有主题的名称,也可以输入新名称。如果输入新名称,则在此活动成功执行后,会在您的 Kafka 服务器上创建只有一个分区 (分区 0) 的新主题。
备注: 如果将“分区”参数留空,则使用默认值,即 UFT One 将指定的消息发送到分区 0。如果您将此参数设置为负值,则消息将发送到您主题上的任何可用分区。
- 如果需要,添加检查点以验证此活动。
从 Kafka 主题接收消息
通过此活动,可以从指定主题中获取同一组中其他用户未使用的所有消息。
在该过程中,UFT One 充当用户。您必须为 UFT One 指定“用户组 ID”以检索用户组中其他用户未使用的消息。
从 Kafka 主题接收消息
- 创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
- 将 “接收来自 Kafka 主题的消息”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
您可以根据测试场景将“组 ID”设置为任意值。如果您想再次从主题接收相同的消息,请记住更改组 ID。
- 如果需要,添加检查点以验证此活动。
从特定偏移/分区接收消息
通过此活动,可以从位于定义的偏移处的特定分区获取消息。
在该过程中,UFT One 充当用户并始终使用新的用户组 ID 从 Kafka 服务器上的指定偏移检索消息。
从特定偏移/分区接收消息
-
创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
-
将 “接收来自特定分区/偏移的消息”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
备注: 如果将“分区”和“偏移”参数留空,则使用默认值,即 UFT One 从偏移 0 处的分区 0 检索消息。
- 如果需要,添加检查点以验证此活动。
从特定偏移/分区开始接收消息
通过此活动,可以从特定分区中定义的偏移处开始获取所有消息。
在该过程中,UFT One 充当用户并始终使用新的用户组 ID 从 Kafka 服务器上定义的偏移处开始检索所有消息。
从特定分区/偏移开始接收消息
-
创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
-
将 “从特定分区/偏移开始接收消息”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
备注: 如果将“分区”和“偏移”参数留空,则使用默认值,即 UFT One 从偏移 0 处的分区 0 开始检索所有消息。
- 如果需要,添加检查点以验证此活动。
从 Kafka 主题接收所有消息
此活动用于从 Kafka 主题获取所有消息。
在该过程中,UFT One 充当用户并始终使用新的用户组 ID 从 Kafka 服务器上的指定主题检索所有消息。
从主题接收所有消息
-
创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
-
将 “接收来自主题的所有消息”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
- 如果需要,添加检查点以验证此活动。
从偏移/分区中删除消息
通过此活动,可以删除小于分区中指定偏移量的偏移处的所有消息。成功执行此活动后,您将无法恢复已删除的消息。
从偏移/分区中删除消息
-
创建 API 测试或打开现有的 API 测试,在“工具箱”>“标准活动”中的“Kafka”节点下展开 Kafka 活动。
-
将 “从分区/偏移删除消息”活动从“工具箱”窗格拖动到画布中的“测试流”。
-
在“属性”窗格的“输入/检查点” 选项卡中,设置活动属性。
备注: 如果将“分区”和“偏移”参数留空,则使用默认值并且不会删除任何消息,因为偏移 0 是最小偏移量。
- 如果需要,添加检查点以验证此活动。