通过客户机程序记录服务测试

您可以通过任何使用 HTTP 协议的客户机程序来记录基于 SOAP 的、XML、纯文本或二进制服务的测试。 为了记录测试,记录器将截取客户机与服务之间的服务调用和消息返回。您可以根据客户机程序的功能,在 HTTP/SOCKS 代理记录器或低级别套接字记录器之间进行选择。

开始之前

以下记录器可用于从应用程序记录流量:
  • SOCKS 代理记录器:在无需任何代理连接时使用此记录器。
  • HTTP 代理记录器:在需要代理连接才能连接到网络时或在客户机程序不支持 SOCKS 时使用此记录器。
  • 套接字记录器:在客户机不支持代理时对低级别网络流量使用此记录器。此记录器不支持任何类型的 SSL 认证或加密,并且仅在安装了 IBM® Rational® Performance Tester Extension for Socket Protocols 的情况下才可用。
无论您使用哪种记录器,客户机程序都必须使用 HTTP 网络协议。有关如何记录 Java™ 消息服务 (JMS) 或 IBM WebSphere® MQ 测试,请参阅记录通用服务客户的服务测试

如果您要使用安全套接字层 (SSL),那么 HTTP 或 SOCKS 代理可能会导致认证问题,因为代理记录器会在客户机与服务器之间对流量进行中继。根据所设置的认证方法,客户机可能会要求代理记录器将其自身认证为服务器,而服务器可能会要求代理记录器认证为客户机。如果客户机程序需要已认证的服务器,那么您必须拥有对服务器证书密钥库的访问权并将其提供给代理记录器,或者将客户机配置为接受来自代理记录器的缺省证书而不是来自实际服务器的证书。

如果您要测试基于 SOAP 的 Web 服务,请确保可以访问有效 Web 服务描述语言 (WSDL) 文件。向导可以从工作空间、文件系统、远程存储库或 URL 导入 WSDL 文件。确保 WSDL 文件使用适合于测试环境的正确语法。通用服务客户机可能无法使用某些 WSDL 文件。

如果要使用 SOAP 安全性,请确保已为环境配置了正确的库和配置文件。有关更多信息,请参阅针对 SOAP 安全性配置环境

过程

要通过客户机程序记录服务测试,请执行以下操作:

  1. 在“性能测试”透视图中,单击从记录新建测试工具栏按钮 “从记录新建测试”工具栏按钮 或单击文件 > 新建 > 来自记录的测试
  2. 在“从记录新建测试”向导中,单击从新记录创建测试,选择服务测试,然后单击下一步 如果要记录敏感数据,那么可选择记录加密级别
  3. 在“选择位置”页面上,选择要创建测试的项目和文件夹,输入测试的名称,并单击下一步 如有必要,请单击创建父文件夹 “创建父文件夹”图标 以创建项目或文件夹。
  4. 在“选择客户机应用程序”页面上,选择要使用的客户机程序类型。 程序类型将定义可以使用的记录器。支持以下类型的客户机程序来记录服务测试:
    • 受管应用程序:此选项用于启动指定的程序并使用代理或套接字记录器来记录流量。

      在“受管应用程序选项”页面上,单击浏览以指定程序路径。如有必要,请指定工作目录,然后输入程序所需的命令行参数

      如果程序要求用户从命令行界面进行输入,请选择打开控制台以进行用户输入

    • Microsoft Internet Explorer 或 Mozilla Firefox:此选项用于记录使用任一 Web 浏览器发送和接收的流量。
    • 非受管应用程序:此选项使您能够从一个或多个使用代理的客户机程序记录流量。您必须手动启动客户机程序,而代理记录器将记录所有通过指定的网络端口发送和接收的流量。
    • 通用服务客户机:此选项在您不能访问专用于服务调用的客户机时使用通用服务客户机。请参阅记录通用服务客户的服务测试以了解如何使用通用服务客户机来记录服务测试。
  5. 在“记录器设置”页面上,根据已选的客户机程序类型,指定以下详细信息:
    1. 如果选择了受管应用程序,请指定记录方法。
      • 选择使用代理记录器记录流量以通过代理来记录 HTTP 或 SOCKS 流量。
      • 选择使用套接字记录器记录流量以在无法使用代理的情况下记录应用程序的低级别网络流量。此记录器不支持 SSL 认证或加密。
      注: 使用代理记录时,可过滤掉针对特定端点的 HTTP 或 HTTPS 请求,这样就不会记录针对这些端点的任何请求。请参阅代理记录首选项
    2. 如果选择了使用代理记录器记录流量,请指定代理记录器使用 HTTP 还是 SOCKS。如果需要连接到代理或者如果应用程序不支持 SOCKS,请选择 HTTP
    3. 如果要使用 SSL 认证,请指定代理记录器的认证设置。 在记录期间,代理记录器在客户机与服务器之间。
      • 如果服务器需要客户机认证,那么您必须提供服务器对代理记录器进行认证(如同代理记录器是客户机)所需的客户机证书密钥库。选择服务器需要特定客户机证书。指定服务器证书密钥库的文件名和密码。如果需要多个证书,请单击多个证书,然后单击添加以指定每个主机名和端口的证书密钥库文件名和密码。
        注: 此密钥库必须包含客户机的专用证书。
      • 如果客户机需要服务器认证,那么您必须提供客户机对代理记录器进行认证(如同代理记录器是服务器)所需的服务器证书密钥库。选择客户机需要特定服务器证书,然后单击添加以指定每个主机名和端口的证书密钥库文件名和密码。如果不选择此选项,那么代理记录器将提供其自己的缺省证书。
        注: 此密钥库必须包含服务器的专用证书。
    4. 如果选择了使用 HTTP 代理记录器,请指定如何连接到网络。如有必要,请指定 HTTP 或 SOCKS 代理或者指向代理自动配置 (PAC) 文件。 如果您要通过公司代理或防火墙连接到服务,请使用此选项。
  6. 单击下一步。如果这是您首次记录服务测试并且没有为客户机应用程序选择 Web 浏览器,请阅读“隐私警告”,选择接受,然后单击完成以继续。
  7. 如果对受管或非受管应用程序选择了代理记录器,请更改客户机程序的网络设置以使用代理记录器。 更改网络设置的方法取决于客户机程序。但是,您必须能够在程序中设置以下代理设置:
    • SOCKS 或 HTTP 代理:指定已在向导中为代理记录器选择的协议。
    • 主机名:设置为 localhost
    • 端口:指定已在向导中为代理记录器选择的端口号。
    要避免意外的结果,请在停止记录之前还原为先前的代理设置。
  8. 使用客户机程序来执行要测试的操作。 您可以使用“记录器测试注释”工具栏在记录期间添加注释,记录同步,或获取截屏。
    • 要将注释添加到所记录的测试,请单击插入注释图标 “插入注释”图标
    • 要将截屏添加到所记录的测试,请单击截屏图标 “截屏”图标。 屏幕和窗口截图使测试更容易阅读并帮助您可视化所记录的测试。您可以更改截屏的设置并向图像添加注释。
    • 要手动将同步点添加到记录,请单击插入同步图标 “插入同步”图标
    • 要手动将事务文件夹添加到记录,请单击启动事务图标 “启动事务”图标停止事务 “停止事务”图标 图标以启动和停止事务。
    • 要将分割点插入到记录的测试中,请单击分割点图标 “分割点”图标。通过分割点,您可以从单个记录生成多个测试,并能够通过调度按不同顺序重放这些测试。
  9. 在客户机程序中完成用户任务后,停止记录器。可以通过关闭客户机程序或通过单击“记录器控制”视图中的停止 “停止”图标 按钮来执行此操作。 如果您已按照步骤 8 中所述更改了客户机程序的网络设置,那么可以在关闭此程序之前还原为缺省设置。 将打开“生成服务测试”向导。
  10. 如果在记录期间插入了分割点,请在“目标”页面上指定分割测试的位置或将分割记录合并到一起。 请参阅在记录期间分割 HTTP 测试以了解关于如何分割测试的更多信息。
  11. 在“服务测试生成选项”页面上,如果要测试基于 SOAP 的 Web 服务,请从工作空间指定 Web 服务描述语言 (WSDL) 文件,或者单击添加以导入 WSDL 或链接到远程 WSDL 文件。
  12. 单击完成

结果

在生成测试时,会打开一个进度窗口。完成后,“记录器控制”视图将显示 Test generation completed 消息,测试导航器将列出测试,并且测试将在测试编辑器中打开。

反馈