将 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. 选择 File> New> Project
    2. 选择 General> Project
    3. 单击 Next
    4. Project Name下输入 Tutorial
    5. 单击 Finish
  2. 向此项目添加一个新的 .tst。
    1. 右键单击新教程项目节点,然后选择 Add New> Test (.tst) File
    2. File name下输入 Tutorial ,然后单击 Next
    3. 选择 SOA> WSDL,然后单击 Next
    4. 输入 http://localhost:8080/parabank/services/store-01?wsdl 作为 WSDL URL
    5. 清除 Create Functional Tests from the WSDL 多选框,然后选择 Create tests to validate and enforce policies on the WSDL 多选框。



    6. 单击 Finish。因为选中了 Create tests to validate and enforce policies on the WSDL 多选框,所以四个 WSDL 测试自动创建在一个名为 WSDL Tests的单独测试套件中。若要查看此测试套件,打开 Test Case Explorer 选项卡,并展开树。



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



    将打开 Add Output 向导,该向导显示可用工具列表。另外,所选定工具说明在 Tool Description 字段中进行显示。
  4. Add Output 向导中,从左窗格选择 Conformance Report ,从右窗格选择 Browse ,然后单击 Finish 按钮。这将在运行测试时向浏览器发送 WS-I Conformance 报告。



  5. 选择 Test Suite: WSDL Tests 节点,单击 Test toolbar 按钮。



    如果出现任何错误,它们将显示位于 SOAtest GUI 底部的 Console 对话框中。关于错误的更多信息,请双击其节点。
  • No labels