如何:创建 Web 服务测试
更新:2007 年 11 月
可以使用 Web 测试对 Web 服务进行测试。通过使用“插入请求”和“插入 Web 服务请求”选项,可以在“Web 测试编辑器”中自定义各个请求以定位到 Web 服务页。通常,并不在 Web 应用程序中显示这些页。因此,必须自定义请求才能访问这些页。
以下过程使用商务初学者工具包中包含的 Web 服务。可从 ASP.NET Starter Kits下载该工具包。
说明: |
---|
使用 ASP.NET Development Server 可以对 Web 服务器上未承载的 Web 服务进行测试。有关更多信息,请参见测试 Web 服务。 |
测试 Web 服务
创建一个新的 Web 测试。浏览器打开后立刻单击“停止”。
在“Web 测试编辑器”中右击该 Web 测试,然后选择“添加 Web 服务请求”。
在新请求的“Url”属性中,键入 Web 服务的名称,如 https://localhost/storecsvs/InstantOrder.asmx。
打开单独的浏览器会话,在“地址”工具栏中键入 .asmx 页的 URL。选择要用来测试和检查 SOAP 消息的方法。该方法包含 SOAPAction。
在“Web 测试编辑器”中,右击请求并选择“添加标题”添加新标题。在“名称”属性中键入 SOAPAction。在“值”属性中,键入您在 SOAPAction 中看到的值,如 "http://tempuri.org/CheckStatus"。
在“字符串正文”节点“内容类型”属性中键入 text/xml。
返回到步骤 4 中的浏览器,从 Web 服务描述页中选择 SOAP 请求的 XML 部分并将它复制到剪贴板中。
XML 内容类似下面的示例:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="https://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CheckStatus xmlns="http://tempuri.org/">
<userName>string</userName>
<password>string</password>
<orderID>int</orderID>
</CheckStatus>
</soap:Body>
</soap:Envelope>
返回到“Web 测试编辑器”,然后单击“字符串正文”属性中的省略号 (…)。将剪贴板中的内容粘贴到该属性中。
为使测试通过,必须用有效值替换 XML 中的所有占位符值。在前面的示例中,将替换两个 string 实例和一个 int。只有注册用户发出请求时才能完成此 Web 服务操作。
右击 Web 服务请求并选择“添加 URL QueryString 参数”。
为查询字符串参数赋予一个名称和值。在前面的示例中,名称为 op,值为 CheckStatus。这标识要执行的 Web 服务操作。
说明: 通过使用 {{DataSourceName.TableName.ColumnName}} 语法,可以在 SOAP 体中使用数据绑定,从而用数据绑定值替换所有占位符值。有关更多信息,请参见如何:向 Web 请求添加数据绑定。
运行测试。在 Web 测试查看器的上窗格中,选择 Web 服务请求。在下窗格中,选择“Web 浏览器”选项卡。此时将显示 Web 服务返回的 XML 以及任何操作的结果。