Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
title版本兼容性

Virtualize 9.10.x 中记录的 HTTP 流量文件在 通讯报文文件在 Parasoft Virtualize 9.9.x 及更早版本上无法使用。 

...

监听器

可以从下拉菜单中选择在创建代理时定义的 HTTP 监听器(请查阅 创建代理),或者使用默认的监听器。

可以在下面部分添加 HTTP 监听器

  1. 单击 New 并为监听器指定名称。
  2. 单击 Add Port 并输入端口号。 
  3. 在客户端通过 SSL 发送流量时,启用 发送通讯报文时,启用 Secure 选项并启用验证选项。有关更多详情,请查阅 HTTP 配置 。
  4. 单击 OK ,退出端口编辑器。
  5. 单击 Add ,添加监听器的其他端口,或再次单击 OK ,完成添加监听器。
代理监听路径

输入代理应该监听传入连接的路径。

任何两个消息代理都不能存在这样的 HTTP 连接,它具有相同代理路径或与现有虚拟资产的 HTTP 路径匹配的路径。

有关更多详情,请查阅 HTTP 配置

代理 URL显示应该给 AUT 的 URL;有关更多详情,请查阅 将 AUT 指向代理

...

服务 URL包含目标应用程序的整个路径(包括服务主机、服务端口和转发路径)。可以在此处输入完整 URL,和/或在下面字段中指定组件:在一个区域进行更新将传播给另一个(如,如果在 URL 中更改端口,则服务端字段的值将自动更新)。 
服务主机

输入服务所在机器的主机名。这是代理将向其发送消息的机器。

如果希望代理在不使用 HTTP 连接的情况下,将消息转发到本地 Virtualize 服务器上的虚拟资产,请输入 localhost127.0.0.1 ,代替实际的主机名。 

服务端口输入服务器正在监听的端口。这是代理将向其发送消息的端口。
服务转发路径

(可选项)输入代理应该向其转发接收到的消息的路径。如果为空,则默认为 Proxy listen path 字段中的值。

如果 HTTP 代理正在向本地服务器发送消息,则必须输入 Service forward 路径,因为代理不允许转发给自己。 

如果 Service forward path 发送重定向,代理将遵循重定向,并做出响应。它不会将重定向传递回客户端。

有关更多详情,请查阅 HTTP 配置

二次连接(输出)

如果希望在主连接失败或响应程序不可用时,将流量重定向到第二代理端点,请启用 如果希望在主连接失败或响应程序不可用时,将通讯报文重定向到第二代理端点,请启用 Use secondary connection if primary fails 选项。如果响应状态码为 400 或更高,则连接将视为“失败”。

例如,如果希望在任何活动端点不可用时使用虚拟资产,则可能需要指定辅助端点。或者,如果虚拟资产无法处理给定的用例,则可能使用辅助端点以让流量重定向到活动端点。然后可以选择性地记录实时流量,以创建覆盖该用例的新的虚拟资产。例如,如果希望在任何活动端点不可用时使用虚拟资产,则可能需要指定辅助端点。或者,如果虚拟资产无法处理给定的用例,则可能使用辅助端点以让通讯报文重定向到活动端点。然后可以选择性地记录实时通讯报文,以创建覆盖该用例的新的虚拟资产。

如果没有启用此选项,则将不会使用主连接进行记录。

如果启用了该选项,则可以从可用的录制选项中(如下所述)进行选择。

录制选项

这些设置确定在指定辅助端点时如何记录流量。这些设置确定在指定辅助端点时如何记录通讯报文。

  • 记录两个连接:记录主从连接的流量。将不会记录来自主连接的错误信息;相反地,消息将被发送到次要服务器,并记录响应。将记录次要服务器报告的错误。记录主从连接的通讯报文。将不会记录来自主连接的错误信息;相反地,消息将被发送到次要服务器,并记录响应。将记录次要服务器报告的错误。
  • 只记录主连接:记录主连接的流量。不会记录错误。记录主连接的通讯报文。不会记录错误。
  • 只记录二次连接:记录二次连接的流量,包括错误。记录二次连接的通讯报文,包括错误。

安全选项设置

只有当正在虚拟化的服务使用 SSL 时,才需要完善服务 SSL 部分。

...

该选项允许在 Virtualize 消息代理级别指定代理服务器,这样就可以控制要哪个代理服务器来处理正在测试的应用程序和指定的 Virtualize 消息代理之间的流量。它允许配置不同的代理服务器,用于不同 消息代理之间的通讯报文。它允许配置不同的代理服务器,用于不同 Virtualize 消息代理之间的通信。 

若要在该级别上指定代理设置,请在代理的代理服务器(Proxy Server)选项卡中提供合适的详细信息。 

...

在最简单的情况下,可以将 Proxy listen path 设置为你的服务路径,并保留 设置为您的服务路径,并保留 Service forward path 为空。使用该配置,代理将它在该路径接收到的所有消息自动转发到 Service hostService port上相同的路径。 

如果需要代理监听与你的服务路径不同的路径,请将 如果需要代理监听与您的服务路径不同的路径,请将 Service forward path 设置为要将所接收消息发送到的实际路径。代理将会把路径和任何查询部分转发到目标服务。 

...

可以将来自监听路径的动态段用作转发路径的一部分。实现这一点有两种不同的方式:

  • 如果希望将流量转发到接收请求的路径,请保留转发路径为空。如果希望将通讯报文转发到接收请求的路径,请保留转发路径为空。
  • 如果转发路径不同且需要使用动态值,则使用环境变量符号对其进行配置。例如:
    监听路径:/path/*/service
    转发路径:/asset/path/${1}/service

...

embedded.ssl.includeProtocols

HTTPS 连接支持以逗号分割的 SSL 协议列表。如果设置了该属性,则 JVM 中的 SSL 实现只支持列表中的协议。如果该属性未设置,则 使用 JVM 支持的协议(如果 JVM 默认启用其中一个或同时启用了两个则不包括 SSLv2 和 SSLv3)

embedded.ssl.includeCipherSuites

HTTPS 连接支持以逗号分割的密码算法列表。使用 JSSE 算法命名规范来指定密码。如果设置了该属性,则 SSL 实现只支持列表中的密码。如果该属性未设置,则使用 JVM 的默认密码套件, 除了不考虑 安全的套件。 都将支持。因此, 默认情况下,只有非常有限的一组密码可用 于旧版本的 JVM。

embedded.ssl.useCipherSuitesOrder

将该属性设置为 true ,强制执行服务器的密码顺序(来自密码设置)。将该属性设置为 false ,选择客户端显示的第一个可接受密码套件。该功能要求 Java 8 或更高版本。默认为 undefined,这将这将导致 JSSE 实现顺序的定义。

embedded.ssl.maxCertPathLength

验证客户端证书时,允许最大中间证书数。默认为 5

embedded.ssl.crlPath将路径设置为包含证书撤销列表的文件,该列表用于验证客户端证书。如果该属性未设置,则不会根据证书撤销列表检查客户端证书。
embedded.ssl.keyManagerAlgorithm设置要使用的证书编码算法。默认情况下,使用 KeyManagerFactory.getDefaultAlgorithm() ,它为 Sun JVMs 返回 SunX509 。IBM JVMs 返回 IbmX509
embedded.ssl.truststoreAlgorithm设置用于信任库的算法。如果该属性未设置,则使用 javax.net.ssl.TrustManagerFactory.getDefaultAlgorithm() 反悔的默认值。
embedded.ssl.useKeyManagerAlgorithmForTruststore如果该属性设置为 true,则密钥管理器算法用作信任库算法。这是 embedded.ssl.truststoreAlgorithm 属性需要的先例。默认为 false

...

例如:发送通讯报文到服务

假定希望为通常可以通过 http://example.parasoft.com:9080/BookStore访问的服务创建消息。可以用以下设置来创建 HTTP 代理: 

  • 代理监听路径:/BookStore
  • 服务主机:example.parasoft.com
  • 服务端口:9080
  • 服务转发路径:[empty]


该配置将监听 /BookStore ,并将所有流量转发到实际的书店服务。,并将所有通讯报文转发到实际的书店服务。

如果希望监听除了服务路径之外的路径,可以如下配置代理:

  • 服务转发路径:/BookStore
  • 代理监听路径:/SomeOtherPath


这将会把流量从代理上的 这将会把通讯报文从代理上的 /SomeOtherPath 路由到实际书店服务。 

相同情况下,所有跳转至这些路径(包括子路径)的流量都将发送给服务。在第二个示例中,发送给 相同情况下,所有跳转至这些路径(包括子路径)的通讯报文都将发送给服务。在第二个示例中,发送给 /SomeOtherPath/SubPath 的流量会发送给 的通讯报文会发送给 /BookStore/SubPath。由于保留了查询,/SomeOtherPath?param=value 将发送到 /BookStore?param=value。

...

当请求转发给要求 HTTP 数据头名称区分大小的服务时,如果正在使用桌面版的 Virtualize 服务器,你的消息代理数据头将使用小写字母,此时,可能无法正常工作。服务器,您的消息代理数据头将使用小写字母,此时,可能无法正常工作。

你可以在 您可以在 /VirtualAssets/ 目录中创建一个 _global.headers 文件,并使用要传递的特定大小写添加数据头。右键单击 UI 中的服务器,并重新部署所有虚拟资产,以便在你的环境中开始使用该文件。中的服务器,并重新部署所有虚拟资产,以便在您的环境中开始使用该文件。

还可以解决特定消息代理的 HTTP 数据头大小写问题。在 /VirtualAssets/ 目录中创建一个 <proxy-name>.headers 文件,并使用要传递给特定代理的指定大小写添加数据头.该文件将应用于特定代理,并覆盖全局文件。右键单击 UI 中的服务器,并重新部署所有虚拟资产,以便在你的环境中开始使用该文件。中的服务器,并重新部署所有虚拟资产,以便在您的环境中开始使用该文件。

示例数据头文件

Code Block
X-AUTHORIZATION
ANOTHER-HEADER
HEADER3

...


例如:发送通讯报文到虚拟资产

代理也可以发送流量到虚拟资产。在这种情况下,就像输入另一个服务一样,输入 代理也可以发送通讯报文到虚拟资产。在这种情况下,就像输入另一个服务一样,输入 Virtualize 服务器的主机和端口信息。

例如,若要将流量发送到远程服务器上的虚拟资产: 例如,若要将通讯报文发送到远程服务器上的虚拟资产: 

  • 服务主机: virtualize.parasoft.com
  • 服务端口:9080
  • 代理监听路径:/path


如要将流量发送给本地服务器的虚拟资产,可以使用:如要将通讯报文发送给本地服务器的虚拟资产,可以使用:

  • 服务主机: localhost
  • 服务端口:9080
  • 服务转发路径:/pva

...

Info
title转发请求到要求数据头文件名区分大小写的服务

当请求转发给要求 HTTP 数据头名称区分大小的服务时,如果正在使用桌面版的 Virtualize 服务器,你的消息代理数据头将使用小写字母,此时,可能无法正常工作。有关更多详情,请查阅 服务器,您的消息代理数据头将使用小写字母,此时,可能无法正常工作。有关更多详情,请查阅 HTTP 配置

Anchor
Security Configuration
Security Configuration
安全配置

安全配置有两个方面: 

  • 如果你正向其转发流量的服务使用 如果您正向其转发通讯报文的服务使用 SSL 和/或访问身份验证,则需要执行 HTTP 配置 (来自代理的 UI 控件)。
  • 如果 AUT 使用 SSL 和/或访问身份验证,则需要执行 HTTP 配置 (适用于基于 Tomcat 的 Virtualize 服务器)。

因此,根据你的配置,你可以执行服务器级别配置、代理级别配置,或者两者都执行。因此,根据您的配置,您可以执行服务器级别配置、代理级别配置,或者两者都执行。

Anchor
Proxy-Level Configuration
Proxy-Level Configuration
代理级别配置

代理级别安全配置(如果你正向其转发流量的服务使用 代理级别安全配置(如果您正向其转发通讯报文的服务使用 SSL 和/或访问身份验证,该配置是有关配置),它涵盖了:

...