Parasoft HTTP/2 Transport Extension 为 Parasoft SOAtest 中适用的消息传送客户端工具添加了对 HTTP/2 传输的支持。这样,用户在配置、发送和验证通过 HTTP/2 发送的消息时,就能充分利用 SOAtest 的丰富界面。

前提条件

  • SOAtest 9.9.5 至 2021.2
  • Oracle Java 8 1.8.0_5 至 1.8.0_242 版本
  • ALPN

安装

可以通过 UI 或命令行安装该工具。

JDK 安装

修改 SOAtest,使其使用 JDK 1.8 而不是默认的 JDK 启动。
对于 Windows,

  • 使用 soatest.exe -Zjava_home "[JRE 的完整路径]" 启动。例如:
    soatest.exe -Zjava_home "C:\Program Files\Java\jre1.8.0_102"

对于 Linux/Mac:

  1. 在编辑器中打开 soatest.sh
  2. 在文件顶部,为变量 JAVA_EXEC 的 Java 可执行文件设置路径。例如,将
    JAVA_EXEC=""
    改为
    JAVA_EXEC="/opt/jdk18/bin/java"

ALPN 安装

HTTP/2 使用名为 ALPN 的 TLS 扩展来建立安全连接。要使用的 ALPN 实现完全取决于 JDK 版本;请参阅以下页面获取映射关系:https://github.com/jetty-project/jetty-alpn/blob/master/docs/version_mapping.properties

下载与用于启动 SOAtest 的 JDK 1.8 版本相匹配的 ALPN jar。可以在 https://search.maven.org/artifact/org.mortbay.jetty.alpn/alpn-boot 下载 jar 

  1. 执行以下操作,将 ALPN jar 添加到启动 SOAtest 的 JVM 的 boot classpath 中:
    1. 编辑 Parasoft Test 安装目录下的 eclipse.ini
    2. 在文件末尾新的一行内添加以下条目:
      -Xbootclasspath/p:path_to_alpn-boot.jar
      For example:
      -Xbootclasspath/p:c:/jars/alpn/alpn-boot-8.1.1.v20141016.jar

Parasoft Extension 安装

UI 安装

  1. 选择 Parasoft> 首选项
  2. 在系统属性首选项页面,点击添加 JARs
  3. 在打开的文件选择器中,选择 com.parasoft.soavirt.transport.http2-1.0.0.jar一旦此 jar 文件添加到 SOAtest/Virtualize classpath 中,则将加载所有必需的依赖项。

命令行安装

将 http2transport.jar 文件添加到设置属性文件中的 system.properties.classpath 属性。例如:

system.properties.classpath=<path to jar>/com.parasoft.soavirt.transport.http2-1.0.0.jar

classpath 更改完成后,将加载所有必需的依赖项。

使用说明

HTTP/2 Transport 主要用于消息传送客户端工具(如 SOAP 客户端、EDI 客户端和消息传送客户端)。该传输协议在消息传送客户端的传输选项卡中配置。要在消息传送客户端中使用 HTTP/2 Transport,请在传输下拉菜单中选择 HTTP/2,然后配置可用选项。

可以使用以下配置选项。

选项说明
URL指定要调用的 URL。默认端口为 443
HTTP 方法要调用的 HTTP 方法。支持所有有效的 HTTP 方法。默认为 GET
Ping Intervalping 间隔的频率(毫秒)。ping 用于验证连接性,并告诉服务器保持 TCP 连接开放。默认为 1000
连接超时指定超时前等待回复的时间(毫秒)。
日志等级指定要将多少信息记录到控制台和事件监控视图。默认为 2(警告)

HTTP 信息头

您可以使用可用控件配置任意数量的头部(最多 10 个)。使用 name: value 格式指定头部:

连接管理

选项说明
保持连接/测试执行之后关闭连接

HTTP/2 传输允许使用多个活跃连接。支持 HTTPS,但不支持 HTTP (h2c)。
如果连接设置与已开启的连接匹配(例如具有相同的主机名和端口),那么该连接将被重复使用。如果存在不同的连接设置(不同的主机名和端口),那么将创建一个新的连接。
将测试标记为“保持连接”(启用保持连接)将指示 SOAtest 在该测试执行结束后不调用 close() 关闭连接。
要关闭连接,必须将测试配置为“关闭连接”(启用测试执行之后关闭连接)。SOAtest 将关闭最后使用的连接,这将是相应测试使用的连接。
与内建 HTTP 1.0/1.1 传输协议不同,对于自定义传输,当所有执行结束时,不会对打开的连接进行最终清理。相反,用户需要将给定连接的最后一次测试标记为“关闭连接”;如果不这样做,连接将保持打开状态。
例如,在以下情况中,测试运行结束后,两个连接都将保持打开状态。

Settings A(保持连接)
Settings B(保持连接)
Settings A(保持连接)
Settings B(保持连接)

若要解决这个问题,则可以将每一组唯一设置的最后一次测试标记为“关闭连接”。

Settings A(保持连接)
Settings B(保持连接)
Settings A(关闭连接)
Settings B(关闭连接)

第三方内容

此扩展包括来自第三方的资源项,如下:

更多许可证详情可在该插件的 licenses 文件夹中获得。

  • No labels