Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SOAVIRT_9.10.6_CTP_3.1.2

多响应生成器是一个功能强大的工具,允许你轻松地处理分层数据场景、一对多异步消息传递等等。多响应生成器是一个功能强大的工具,允许您轻松地处理分层数据场景、一对多异步消息传递等等。

在本章节中:

Table of Contents
maxLevel1

...

  1. 从 Parasoft 应用商店下载的存档中提取多响应生成器 JAR 文件。
  2. 从主菜单中打开并选择 Parasoft> Preferences> System Properties
  3. 单击 Add JARs… 并浏览到多响应生成器 JAR 文件。
  4. 单击 OK ,然后重启 Virtualize。

执行此设置后,你将发现工具列表中的多响应生成器工具可用于附加到消息响应程序。执行此设置后,您将发现工具列表中的多响应生成器工具可用于附加到消息响应程序。

配置

多响应生成器使用两组主要选项进行控制。Required 部分中的选项是多响应生成器运行所必需的,而 Optional 部分中的选项为高级场景提供了更细粒度的控制。

...

Scroll Table Layout
widths40%,60%

要发送到后端资产的元素的名称Name of element to send to backend assetXML 元素名称,如果适用,包含命名空间前缀。传入的 XML 中与此名称匹配的元素的每次出现都将被分割并发送到后端资产 URL 中指定的虚拟资产。此外,如果请求中存在多个列表,则此工具将创建所有列表元素的组合。如果要使用单个列表,请排除任何其他列表。
后端资产 Backend Asset URL虚拟资产的 URL。虚拟资产应该有一个响应器来处理 XML 消息,其根元素是要发送到后端资产的元素名中定义的元素。

...

Scroll Table Layout
widths40%,60%

分裂过程不包含的元素Elements excluded from splitting process以逗号分割的元素名称列表,如果适用,包含命名空间前缀。默认情况下,如果要发送到后端资产选项的元素名称汇总指定的 XML 包含任何具有相同名称的兄弟元素(比如,列表),则多响应生成器将为兄弟元素的每次重复创建一个单独的请求。
相应类型Response Type如果 Backend Asset URL 中指定的虚拟资产返回 XML,则将该字段保留为空。如果 Backend Asset URL 中指定的虚拟资产返回非 XML 格式的负荷,则输入 Other。
输出 Output XML 根标签名称Root Tag Name响应 XML 输出的根标签名称。默认为“responses”。
输出 Output XML输出 XML 根标签名称的子元素名称。默认为“response”。
SOAPAction 列表List对于以逗号分割的列表中指定的每个 SOAPAction,要发送给后端资产的元素名称中指定的元素的每次出现都将使用该 SOAPAction 发送到 Backend Asset URL。如果每个元素出现都需要多个响应,则这一点非常有用。

...

  1. 使用一个或多个响应程序创建一个前端资产:
    1. 右键单击 VirtualAssets 项目,然后选择 Add New> Virtual Asset (.pva) File。 
    2. Enter提示时,在 File Name 字段中输入 Example1-Frontend ,然后单击 Next。 
    3. 在下一个屏幕上的选项列表中选择 Empty ,然后单击 Finish。 
    4. 右键单击新创建的 Example1-Frontend.pva 中的 Responder Suite ,然后选择 Add New > Responder。 
    5. 在出现的窗口中,选择 Literal Message Responder,然后单击 Finish
  2. 对于需要它的每个响应程序,将多响应生成器附加到消息响应程序的 Incoming Request> Payload 输出(如果响应程序将处理 XML 输入)或消息响应程序的 Incoming Request> Payload Converted to XML 输出(如果响应程序将处理非 XML 输出。 
    1. 右键单击 Literal Message Responder ,然后选择 Add Output…
    2. 在出现的窗口中,在传入请求部分选择 Payload ,然后在常见工具下选择 Multiple Responses Generator 。 
    3. 单击 Finish。 
  3. 使用至少一个 Name of element to send to backend assetBackend Asset URL配置多响应生成器。
    1. 要发送到后端资产的元素名称字段中,在 Name of element to send to backend asset 输入 item
    2. Backend Asset URL 字段中,输入 http://localhost:9080/Example1-Backend
    3. Optional 部分,输入 itemResponses
    4. 创建后端资产来处理多响应生成器将发送的消息。确保后端资产部署在多响应生成器中的 Backend Asset URL 中指定的 URL 上。

      Info

      为了简单起见,我们将在后端使用固定响应。然而,从应用商店下载的归档中的 Example1-Backend.pva 使用动态响应。

  4. 右键单击 VirtualAssets 项目,然后选择 Add New> Virtual Asset (.pva) File。 
  5. 提示时,在 File Name 字段中输入 Example1-Backend ,然后单击 Next。 
  6. 在下一个屏幕上的选项列表中选择 Empty ,然后单击 Finish。 
  7. 在新创建的 Example1-Backend.pva 中,右键单击 Responder Suite ,然后选择 Add New > Responder。 
  8. 在下一个屏幕上选择 Literal Message Responder ,然后单击 Finish
  9. 输入以下 XML:

    Code Block
    languagexml
    <itemResponse>
     <balance>10</balance>
    </itemResponse>
  10. 将 XML 数据库或文本数据库附加到多响应生成器的响应 XML 输出,并配置它以提取聚合的响应。
    1. 在 Example1-Frontend.pva 中,右键单击 MultipleResponsesGenerator ,然后选择 Add output…
    2. 选择左侧的 Response XML ,然后选择右侧的 XML Data Bank 。 
    3. 单击 Add XPath
    4. 单击 Selected XPaths 列中出现的行,然后单击 Modify
    5. 将 Xpath 字段更改为 /*
    6. 从 Extract 下拉 菜单选择 Entire Element 。 
    7. 在编辑器左侧选择 Data source column ,然后在 Custom column name 字段中输入响应。 
    8. 然后单击 OK
  11. 若要在响应中使用聚合的响应,则双击 Literal Message Responder ,并将以下内容输入至文本字段:

    Code Block
    <root>
    	${responses}
    </root>

...