章节目录:
关于插件
Parasoft RabbitMQ 传输扩展为 RabbitMQ SOAtest 中适用的消息传送客户端工具添加了对 RabbitMQ 传输的支持。RabbitMQ 是一个轻量级、可靠、可伸缩和可移植的消息代理。应用程序通过与平台无关的线级协议(Advanced Message queue protocol, AMQP)与 RabbitMQ 通信。
相关扩展 RabbitMQ Listener 允许虚拟资产在 Parasoft Virtualize 中通过 RabbitMQ 接收和响应消息。
要求
- SOAtest 9.9.0 或更高版本
安装
可以从 UI 或命令行中安装此工具。
UI 安装
- 选择 Parasoft> 首选项。
- 在系统属性首选项页面,点击添加 JARs。
- 在文件浏览器中选择 rabbitmqtransport.jar。
一旦此 jar 文件添加到 SOAtest classpath 中,则将加载所有必需的依赖项。
命令行安装
将 rabbitmqtransport.jar 文件添加到设置属性文件中的 system.properties.classpath 属性。例如:
system.properties.classpath=<path to jar>/rabbitmqtransport.jar
classpath 更改完成后,将加载所有必需的依赖项。
使用说明
RabbitMQ Transport 主要用于消息传送客户端工具(比如 SOAP 客户端、EDI 客户端和消息传送客户端)。该传输在消息传送客户端的传输选项卡中配置。若要在消息传送客户端中使用 RabbitMQ Transport,请从传输下拉菜单中选择 RabbitMQ (AMQP) 并配置可用选项。
可以使用以下配置选项。许多设置与 RabbitMQ 设置相同;更多详情,请参阅 Rabbit MQ 文档。
连接设置
主机 | 定义 RabbitMQ 服务器的主机名。默认为 |
---|---|
端口 | 定义 RabbitMQ 服务器的端口号。默认为 |
使用 SSL | 启用/禁用 SSL。默认为 |
用户名 | 定义 RabbitMQ 用户名。默认为 |
密码 | 定义 RabbitMQ 密码。默认为 |
虚拟主机名 | 定义要连接到的 RabbitMQ 虚拟主机。默认为 |
自动连接恢复 | 如果传输试图从连接失败中自动恢复,则将该选项设置为 |
拓扑恢复 | 如果监听器试图从拓扑故障中自动恢复,则将该选项设置为 |
发布设置
Exchange 名称 | 定义发送消息的 Exchange。默认为 |
---|---|
路由键 | 定义发送消息时将使用的路由键。 |
强制的 | 确定消息发布时强制字段设置为 true 或 false。默认为 |
立即的 | RabbitMQ 3.0 或更高版本中不支持。确定消息发布时立即字段设置为 true 或 false。默认为 false。 |
基本属性
应用程序 id | 定义生成消息的应用程序的标识符。 |
---|---|
集群 Id | AMQP 0.9.1 中已被弃用。定义集群内路由标识符。 |
内容编码 | 定义消息内容编码。输入 MIME 内容类型(比如,gzip)。 |
内容类型 | 定义消息内容类型。输入 MIME 内容类型(比如,application/json)。默认值是使用请求消息的内容类型。 |
关联 Id | 定义相关消息的 ID(例如,此消息是对其的回复)。 |
发送模式 | 确定是否应将消息持久存储到磁盘。输入 |
过期 | 定义消息被删除前的有效期(以毫秒为单位)。 |
消息头 | 定义消息头。输入逗号分隔的键/值对。 示例:
|
消息 Id | 定义消息标识符。 |
优先级 | 定义消息优先级。可以输入一个从 |
回复给 | 定义应将响应发送到的队列的名称。 |
时间戳 | 定义如何设置消息时间戳。可以输入 |
类型 | 定义消息类型(例如,此消息表示什么类型的事件或命令)。 |
用户 Id | 定义可选用户 ID。 |
消费设置
等待回复 | 如果传输应该等待回复消息,则将其设置为 如果设置为 |
---|---|
在发送消息之前创建消息端 | 如果在发送消息之前应创建消费者,则将其设置为 |
队列名称 | 定义回复队列。默认为 |
绑定 Exchange | 定义临时队列绑定到的 Exchange。 |
绑定键 | 定义将临时队列绑定到 Exchange 时使用的绑定键。 |
响应超时时间 | 定义响应超时时间(以毫秒为单位)。默认为 |
响应相关设置
如果 RabbitMQ Transport 被配置为等待回复消息,这些设置允许您通过指定响应关联性参数来过滤回复消息。如果没有配置关联性(例如,所有字段都是空的),则不执行筛选,该传输将使用第一个可用的响应消息。如果配置了关联性,将从上到下评估字段条目;第一个匹配字段将用于关联。
匹配响应相关 Id 和 请求消息 Id | 如果除了关联 ID 与已发布消息的消息 ID 相匹配的响应之外,传输应忽略所有其他响应,则设置为 |
---|---|
匹配响应相关 Id 和请求相关 Id | 如果除了关联 ID 与已发布消息的关联 ID 相匹配的响应之外,传输应忽略所有其他响应,则设置为 |
匹配相关 Id 值 | 在此字段中指定一个值,除了关联 ID 符合指定值的响应,传输将忽略所有其他响应。 |
连接管理设置
保持连接/测试执行之后关闭连接 | RabbitMQ Transport 允许使用多个活动连接。如果连接设置匹配已打开的连接,则它将重用该连接。如果任何连接设置不同,则将创建一个新连接。 将测试标记为“保持连接”(启用了保持连接选项)将不会在测试执行结束时告诉 SOAtest 调用连接上的 close()。 若要要关闭连接,必须将测试配置为“关闭连接”(启用了测试执行之后关闭连接)。SOAtest 将关闭最后使用的连接,这将是用于该测试的连接。 与内置的 HTTP 传输不同,当完成所有执行时,不会对自定义传输的打开连接进行最终清理。相反,用户必须将给定连接的最后一次测试标记为“关闭连接”,否则连接将保持打开状态。 例如,在下面的场景中,在测试运行结束后,这两个连接都将保持打开状态。 设置 A(保持连接) 设置 B(保持连接) 设置 A(保持连接) 设置 B(保持连接) 若要解决这个问题,则可以将每一组唯一设置的最后一次测试标记为“关闭连接”。 设置 A(保持连接) 设置 B(保持连接) 设置 A(关闭连接) 设置 B(关闭连接) |
---|
第三方内容
此扩展包括来自第三方的资源项,如下:
- RabbitMQ (Apache license)
更多许可证详情可在该插件的 licenses 文件夹中获得。