本主题介绍在客户端工具中使用 HTTP 1.1 传输的 。

章节目录:

配置 HTTP 1.1 设置

当选择 HTTP 1.1 作为传输协议时,您可以指定是否希望客户端请求使用保持连接模式(NTLM 和 Digest HTTP 身份验证所需)。它还将被重用,用于从 GUI 或命令行调用测试套件。您将能够从适当工具的传输选项卡向 SOAP 请求添加、修改和删除自定义 HTTP 头。此外,您还可以指定 HTTP 分块,它允许将 HTTP 消息分成几个部分。分块通常用于服务器响应,但客户端也可以对大型请求进行块处理。

从相应工具传输选项卡内的传输菜单选择 HTTP 1.1 之后,将在传输选项卡的左窗格显示以下选项:

通用

通用页面选项包括:

  • 路由器端点:端点是服务端点的 URL。  默认情况下,端点被设置为 WSDL 中定义的端点。除了 WSDL,还有其他三个端点选项:

    • 默认:当选择此选项时,端点将是拥有该工具的测试套件中定义的端点。若要查看测试套件中定义端点的 GUI,请点击测试套件节点并点击工具的选项选项卡:

       点击应用端点到所有测试将把测试套件中所有工具的端点设置为 GUI 中定义的端点。
    • 定制:允许设置任何自定义端点。
    • UDDI 服务密钥:描述在首选项面板的 WSDL/UDDI 选项卡中指定的 UDDI 注册中心中,使用 UDDI 服务密钥引用此服务器端点。

  • SOAP Action:指定服务器处理请求的方式。如果已启用了限定到 WSDL,则禁用该字段。只适用于 SOAP 客户端

  • 方法:指定用于处理请求的方法。如果已启用了限定到 WSDL,则禁用该字段。只适用于消息传送客户端。调用的方法也可以指定为固定值、参数化值或脚本化值。

    关于参数化值的详情,请参阅使用数据源、变量或来自其他测试的值对测试进行参数化

    使用固定值,可以使用 ${var_name} 语法对数据源值进行访问。也可以使用指定的环境变量。有关环境的详情,请参阅在不同的环境中配置测试

    关于脚本化值的详情,请参阅 扩展和脚本基础

  • 消息交换模式:期望同步响应:指定是否需要响应主体。总是期望 HTTP 响应头。如果此选项为禁用,则产品将发送单向消息并等待通知头(通常为“HTTP/1.1 202 Accepted”)。

  • 连接设置:指定所选传输协议的保持连接或关闭连接。
    • 持续连接:如果服务器支持,则添加一个“Connection: Keep-Alive”头请求持续连接。NTLM 和 Digest HTTP 身份验证需要这一内容。更多信息,请参阅错误处理
    • 关闭连接 (默认):不输出额外的 HTTP 头,并执行常规的 HTTP 1.0 交换。这是 HTTP 1.0 的默认行为。

  • HTTP 组块:以块的形式发送 HTTP 消息。SOAtest 与 Virtualize 不是从内存中发送整个消息,而是每次读取一个消息块,然后发送消息块。在每个块之前添加一个数字,以便接收端知道需要多少字节。
  • 重定向设置:(仅适用于消息传送客户端,如 REST、SOAP、消息传送、EDI 客户端)指定是否自动跟踪 HTTP 重定向。如果希望对原始请求和响应通讯报文执行操作或验证(而不是只处理最终的请求/响应对),请禁用此选项。
  • 压缩设置:(仅适用于消息传送客户端,例如 REST、SOAP、消息传送、EDI 客户端)指定是否压缩请求和解压响应。
    • Gzip 请求负载:Gzips 通过网络发送的请求有效负载。发送到关联工具的数据不会被压缩。注意,压缩不适用于配置为发送附件或 MTOM 模式的 SOAP 客户端。
    • 解压 gzip 编码的响应负载:解压具有“Content-Encoding: gzip”作为头字段的响应有效负载。附加工具将接收未压缩的数据。

URL 参数

URL 参数页面 (仅适用于消息传送客户端工具)选项包含:

  • URL 参数:允许向 GET 请求的 URL 添加参数。点击添加之后,可以在打开的对话框中指定参数/值对。如果数据源可用,那么也可以参数化该值。

安全性

安全性> 授权中可以选择工具的身份验证方法。默认情况下,会选择为测试套件设置的默认身份验证方法,但也可以通过从第一个下拉菜单中选择定制,然后从下一个下拉菜单中选择所需选项进行更改。选项包含:

  • 为测试套件创建的共享身份验证其中一个方法。您也可以在此处点击新建,为测试套件创建身份验证方法。 

  • 全局首选项,使用 Parasoft> 首选项> 安全性中设置的全局授权首选项(如已设置;有关全局安全首选项的更多信息,请参阅其他首选项设置 页面上的“安全设置”)
  • 没有身份验证,针对负面测试等情况尤为有效。

安全性> 客户端 SSL 选项包括:

  • 使用客户端密钥存储:指定用于完成与服务器握手的密钥库区。

HTTP 标题

HTTP 标题页面选项包括:

  • 添加:点击该选项以添加自定义 HTTP 头。
  • 修改:点击该选项以修改所选定的 HTTP 头。将显示一个对话框,可修改头部的名称和值。如果工具使用数据源,则可以从数据源访问头的值。
  • 删除:点击该选项,删除所选定的 HTTP 头。

这些控件用于覆盖数据字段。例如,您可以通过这些控件指定所需的名称和值来覆盖 Content-Type 头字段。 

默认情况下,添加的以下头字段可以通过这些 UI 控件覆盖。

Host

该值将包含来自 HTTP 端点或资源 URL 的主机名和端口号。

Content-Type

传出消息的媒体类型。只有当传出消息包含由 HTTP 方法控制的主体时,才会发送此头部。为 POST、PUT 和 DELETE 方法发送主体,而不是 GET、OPTIONS、HEAD 或 TRACE。

默认值是根据发送的消息类型确定的。SOAP 消息的内容类型将根据 SOAP 版本的不同而有所不同,SOAP 1.1 使用“text/xml”,SOAP 1.2 使用“application/ SOAP +xml”。其他 XML 消息默认使用“text/ XML”。JSON 消息将使用“application/json”。使用表视图配置的消息将使用“application/x-www-form-urlencoded”。使用 MIME 附件发送的消息将包含“多部分”内容类型,其中包含“start”和“boundary”参数。属于EDI、定长、CSV 或自定义消息格式的消息将具有消息格式的媒体类型。

Content-Length

输出消息的大小(以字节为单位)。如果启用了“分块”传输编码,则不会发送此头。

以下 HTTP 头根据特定条件配置。它们在该表之外配置,或者具有必须动态生成的值。

SOAPAction

只有 SOAP 1.1 才发送该 HTTP 头。其设置在通用页面的 SOAPAction 字段中。

Authorization

该头部会根据客户端选项(HTTP 选项 > 安全性 > 授权)中指定的身份验证和 OAuth 设置自动构建。NTLM、Digest 和 Kerberos 身份验证的值因各种因素而异,包括动态生成的挑战响应和安全令牌。 

Connection

如果启用了关闭连接,那么该头部将添加到值为 close 的消息中。如果启用了持续连接(默认),那么不会发送该头部。NTLM 和 Digest HTTP 身份验证必须启用保持连接。

Proxy-Authorization

此头部是基于首选项中的代理身份验证设置以及服务器是否指示需要代理身份验证来构造的。

缓存

缓存页面选项包括:

  • 发送请求前重设 cookies:允许您清除当前会话,以便下一个 HTTP 调用启动一个新会话。

错误处理

在正常情况下,使用 HTTP 1.1 保持连接的测试用例将在场景期间重用单个连接。当使用 HTTP 1.1 保持连接的测试用例在试图发送或接收数据时超时,客户端将发出一个优雅关闭传输连接的命令。场景中的下一个测试将启动一个新的连接,测试执行将正常继续。



  • No labels