章节目录:
Parasoft RabbitMQ 传输扩展为 RabbitMQ SOAtest 中适用的消息传送客户端工具添加了对 RabbitMQ 传输的支持。RabbitMQ 是一个轻量级、可靠、可伸缩和可移植的消息代理。应用程序通过与平台无关的线级协议(Advanced Message queue protocol, AMQP)与 RabbitMQ 通信。
相关扩展 RabbitMQ Listener 允许虚拟资产在 Parasoft Virtualize 中通过 RabbitMQ 接收和响应消息。
可以从 UI 或命令行中安装此工具。
一旦此 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(关闭连接) |
---|
此扩展包括来自第三方的资源项,如下:
更多许可证详情可在该插件的 licenses 文件夹中获得。