将 WSDL 验证视为测试 web 服务中的第一步。尽管 WSDL 通常由各种工具自动创建,但并不意味着这些 WSDL 是正确的。手动更改 WSDL 时,WSDL 验证变得越来越重要。

正确且符合标准的 WSDL 使您的服务消费者能够正确地工作,并防止供应商锁定。这有助于实现互操作性和服务重用。

SOAtest 会自动生成全面 WSDL 的测试套件,以保证您的 WSDL 符合模式并通过 XML 验证测试。此外,它执行互操作性检查,以识别您的 web 服务是否与其他符合 WS-I 的服务相互操作。

当您完成本教程这个部分时,您的测试套件应类似 SOAtestTutorial.tst 文件中标题为“WSDL Test”的测试套件。

创建 WSDL 验证测试套件

在本例中,我们将使用位于 http://localhost:8080/parabank/services/store-01?wsdl.的 WSDL 为书店服务创建 WSDL 测试。

若要使用 SOAtest WSDL 验证测试来验证 WSDL:

  1. 创建一个新的空项目并命名其为“Tutorial”:
    1. 选择 文件> 新建> 项目
    2. 选择 常规> 项目
    3. 点击下一步
    4. 项目名称下输入教程
    5. 点击完成
  2. 向此项目添加一个新的 .tst
    1. 右键点击新的教程项目节点,然后选择新建> 测试 (.tst) 文件
    2. 文件名称下输入 Tutorial,然后点击下一步
    3. 选择 SOA> WSDL,然后点击下一步
    4. 输入 http://localhost:8080/parabank/services/store-01?wsdl 作为 WSDL URL
    5. 禁用通过 WSDL 创建功能测试,启用创建测试用于在 WSDL 上验证和执行策略
    6. 点击完成。由于启用了创建测试用于在 WSDL 上验证和执行策略,所以在一个名为 WSDL 测试的单独测试套件中自动创建了四个 WSDL 测试。若要查看此测试套件,打开测试用例浏览器选项卡,并展开树结构。

      SOAtest 将从 WSDL URL 中创建以下 WSDL 测试。
    • 测试 1: Schema 有效性:根据 W3C 的 WSDL 模式在 WSDL 上运行 XML 验证。
    • 测试 2: 语义有效性:检查 WSDL 的正确性,方法是像实际的服务消费者那样解析和使用它,但是要严格遵守标准。
    • 测试 3: WS-I 互操作性:检查 WSDL 是否遵循 WS-I Basic Profile 2.0 (适用于 SOAP 1.2), 1.2 (适用于 SOAP 1.1)或 1.1 (也适用于 SOAP 1.1)。
    • 测试 4: WSDL 回归:为 WSDL 创建回归控制,以便可以监控 WSDL 文档中的更改。
  3. 点击测试 3: WS-I 互操作性检查节点,然后点击添加测试或输出...工具栏按钮。

    打开添加输出向导,显示可用工具列表。另外,所选工具说明显示在工具描述字段中。
  4. 添加输出向导中,选择左侧窗格中的一致性报告,选择右侧窗格中的浏览,然后点击完成。这将在运行测试时向浏览器发送 WS-I Conformance 报告。
  5. 请选择上次练习的测试套件: WSDL 测试节点,然后点击运行测试工具栏按钮。

    如出现任何错误,它们将显示在 SOAtest GUI 底部的控制台选项卡中。关于错误的更多信息,请双击其节点。
  • No labels