...
Table of Contents | ||
---|---|---|
|
概要
对于一段 XML(input
),XML 元素名称(elementName
),和后端资产的 URL(backendURL
),多响应生成器在 input
中找到 elementName
的每次出现,并将其分别发送到 backendURL
。后端资产是一个虚拟资产,配置来响应以 elementName
作为根元素的消息,并将响应发送回多响应生成器。一旦获得这些响应,多响应生成器会将它们聚集到一个 XML 文档中,以便在响应中使用。
要求
- Parasoft Virtualize
安装指南
- 从 Parasoft 应用商店下载的存档中提取多响应生成器 JAR 文件。
- 从主菜单中打开并选择 Parasoft> Preferences> System Properties 。
- 单击 Add JARs… 并浏览到多响应生成器 JAR 文件。
- 单击 OK ,然后重启 Virtualize。
执行此设置后,您将发现工具列表中的多响应生成器工具可用于附加到消息响应程序。
配置
多响应生成器使用两组主要选项进行控制。Required 部分中的选项是多响应生成器运行所必需的,而 Optional 部分中的选项为高级场景提供了更细粒度的控制。
所需配置
必须配置以下选项,才能使多响应生成器正常工作。
Scroll Table Layout | ||
---|---|---|
|
要发送到后端资产的元素的名称 | XML 元素名称,如果适用,包含命名空间前缀。传入的 XML 中与此名称匹配的元素的每次出现都将被分割并发送到后端资产 URL 中指定的虚拟资产。此外,如果请求中存在多个列表,则此工具将创建所有列表元素的组合。如果要使用单个列表,请排除任何其他列表。 |
---|---|
后端资产 URL | 虚拟资产的 URL。虚拟资产应该有一个响应器来处理 XML 消息,其根元素是要发送到后端资产的元素名中定义的元素。 |
可选配置
Scroll Table Layout | ||
---|---|---|
|
分裂过程不包含的元素 | 以逗号分割的元素名称列表,如果适用,包含命名空间前缀。默认情况下,如果要发送到后端资产选项的元素名称汇总指定的 XML 包含任何具有相同名称的兄弟元素(比如,列表),则多响应生成器将为兄弟元素的每次重复创建一个单独的请求。 |
---|---|
相应类型 | 如果 Backend Asset URL 中指定的虚拟资产返回 XML,则将该字段保留为空。如果 Backend Asset URL 中指定的虚拟资产返回非 XML 格式的负荷,则输入 Other。 |
输出 XML 根标签名称 | 响应 XML 输出的根标签名称。默认为“responses”。 |
输出 XML | 输出 XML 根标签名称的子元素名称。默认为“response”。 |
SOAPAction 列表 | 对于以逗号分割的列表中指定的每个 SOAPAction,要发送给后端资产的元素名称中指定的元素的每次出现都将使用该 SOAPAction 发送到 Backend Asset URL。如果每个元素出现都需要多个响应,则这一点非常有用。 |
使用说明
多响应生成器可被附加到 Parasoft Virtualize 消息响应程序的任何 XML 输出中。这包含任何基于 XML 的响应程序的 Incoming Request > Payload ,或任何不是基于 XML 的响应程序的 Incoming Request > Payload Converted to XML 。下面描述了使用多响应生成器的基本过程。多响应生成器 1.0Example Scenarios中提供了更详细的描述。
- 使用一个或多个响应程序创建一个前端资产。
- 对于需要资产的每个响应程序,将多响应生成器附加到消息响应程序的 Incoming Request> Payload 输出(如果响应程序将处理 XML 输入)或消息响应程序的 Incoming Request> Payload Converted to XML 输出(如果响应程序将处理非 XML 输出)。
- 使用至少一个 Name of element to send to backend asset 和 Backend Asset URL配置多响应生成器。
- 创建后端资产来处理多响应生成器将发送的消息。确保后端资产部署在多响应生成器中的 Backend Asset URL 中指定的 URL 上。
- 将 XML 数据库或文本数据库附加到多响应生成器的 Response XML 输出,并配置它以提取聚合的响应。
- 在响应中使用聚合的响应。
示例场景
虽然有许多场景可以由多个响应生成器处理,但本节将为使用最频繁的场景提供示例。
处理具有动态元素数量的列表
由多响应生成器处理的最常见场景是包含具有动态元素数量的列表的消息。例如:
...
Code Block | ||
---|---|---|
| ||
<root> <itemResponses> <itemResponse> <balance>10</balance> </itemResponse> <itemResponse> <balance>20</balance> </itemResponse> |
使用 多响应生成器 1.0 Usage中描述的流程,下面的说明有助于使用上述请求和响应设置资产。
...