SOAtest 可以从 WADL 或 RAML 定义或 URL 测试 RESTful 服务。

在本章节中:

在 WADL 可用时测试 RESTful 服务

Parasoft SOAtest 可以通过 REST 客户端工具来测试 RESTful 服务。在下一个示例中,您将使用该工具来测试 ParaBank 贷款请求 API。

当您能够访问描述服务功能的 WADL(Web 应用程序描述语言)时,SOAtest 可以以类似于解析 WSDL 的方式创建一套功能测试。在下一个示例中,您将使用 ParaBank 的 WADL 创建测试。

若要使用 WADL 测试 RESTful 服务:

  1. 请确保本地托管的 ParaBank 应用程序(在 Setting Up ParaBank中引入)正在运行,以便您可以访问 WADL。
  2. 右键单击任意一个 Test Suite: 在之前的教程中创建的Test Suite 测试用例资源管理器节点,并选择 Add New > Test Suite
  3. 选择 REST> WADL,然后单击 Next
  4. WADL URL 字段中,输入 http://localhost:8080/parabank/services/bank?_wadl&_type=xml 选择 Create tests to validate and enforce policies on the WADL,然后单击 Finish



  5. 注意,增加了 3 个测试来检查 WADL:
    • Test 1: Schema Validity根据 W3C 的 WADL 模式在 WADL 上运行 XML 验证。
    • Test 2: Semantic Validity检查 WADL 的正确性,方法是像实际的服务消费者那样解析和使用它,但是要严格遵守标准。
    • Test 3: WADL Regression为 WADL 创建回归控制,以便可以监测 WSDL 文档中的更改。



  6. 注意,已经创建了一个新的测试套件,其中包含与 WADL 提供的服务相对应的子测试套件和 REST 客户端工具。



  7. 双击在 Test Suite: accounts下创建的新的 REST 客户端工具。所有 Path 参数已自动传播;然而,要从 ParaBank 检索一个有效的结果,我们必须提供一个有效的帐户 ID。
  8. 进入 Path 表,然后输入有效的帐户ID 12345accountId下。



    注意,12345 现在被附加到 URL 中。
  9. 保存并运行 REST 客户端。
  10. 双击附加到 REST 客户端的流量查看器并打开 Response 选项卡。您将看到,ParaBank 服务器返回帐户 #12345 的帐户详细信息。

从 OpenAPI/Swagger 或 RAML 定义中生成测试

请查阅 从 OpenAPI/Swagger 定义中创建测试 和 从 RAML 定义中创建测试

使用 URL 测试 RESTful 服务

这个示例还演示了如何在无法访问描述完整应用程序功能的 WADL 时测试 RESTful 服务。

若要使用 URL 测试 RESTful 服务:

  1. 请选择一个 Test Suite: Test Suite 测试用例资源管理器节点,然后单击 Add test suite 工具栏按钮。
  2. 在添加测试向导中,选择 Empty,然后单击 Finish
  3. 双击新建的测试套件,将 Name 字段更改为 REST Example,然后保存并关闭测试套件编辑器。
  4. 请选择上次练习的 Test Suite: REST Example 测试用例资源管理器节点,然后单击 Add test or output 工具栏按钮。
  5. 在左侧选择 Standard Test 之后,在右侧选择 REST Client ,然后单击 Finish。将添加一个新的 REST 客户端工具,并打开其编辑器。
  6. 重命名工具 Loan Request (JSON Response)
  7. 注意, Service Definition 默认设置为 None 。大多数 RESTful 服务都是纯粹的基于 GET 的服务,它们由一个 URL 和一个查询组成;它们通常使用 XML 或 JSON 响应负载进行响应。
  8. 通过在 URL 字段中输入 http://localhost:8080/parabank/services/bank/requestLoan?customerId=1&fromAccountId=12345&amount=100&downPayment=1 ,然后从 Method 下拉框选择 POST 向 RESTful 服务提供请求。



  9. 注意,SOAtest 已经用路径模板和查询参数自动填充了表。如果希望添加其他参数,可以在这里这样做。





  10. HTTP Options 选项卡中,选择 HTTPHeaders 选项卡,单击 Add,然后添加一个带有名称 Accept 和值 application/json的新报头。如果省略了这个报头,服务响应将是 XML 格式的。一旦添加,服务响应将是 JSON 格式。



  11. 保存 REST 客户端编辑器。
  12. 运行测试并在流量查看器中查看流量。注意,如果希望看到 JSON 消息的图形表示,可以从文字视图切换到树视图。

    文字视图:



    树视图:

  • No labels