使用 SoapUI 测试您的 ASP.NET WebService






4.84/5 (28投票s)
本文介绍如何使用 Soap UI 工具测试您的 Web 服务。

目录
引言
我们已经开发了用于不同目的的 Web 服务。授权用户可以消费 Web 服务并使用它。soapUI [^] 是测试我们 Web 服务最强大的工具之一。它能够测试任何类型的 Web 服务,但我将在这里解释如何使用 SOAP UI 来测试 ASP.NET Web 服务。
在开始阅读本文之前,我假设您对以下内容有基本了解:
- 构建和使用 Web 服务
- SOAP 请求和响应
这是测试 .NET Web 服务的基本流程。
我们为什么需要这个?
这是在将 Web 服务移至生产环境或发布之前对其进行测试的最佳方法之一。通常,我们创建一个 Web 服务并创建一个示例消费者应用程序来对其进行测试。但是,使用 Soap UI,我们无需创建消费者。我们甚至可以根据我们的 Soap 请求和响应来测试我们的 Web 服务。我已经描述了使用 Soap UI 工具可以做的所有基本操作。您现在可以探索它并进一步发展。
什么是 soapUI 工具?
soapUI 是一个用于测试 Web 服务的工具。这些可以是 SOAP Web 服务、RESTful Web 服务或基于 HTTP 的服务。soapUI 是开源且完全免费的工具,还有一个商业配套产品 - soapUI Pro - 该产品为需要关键任务 Web 服务的公司提供了额外功能。
soapUI 已被下载超过一百万次,被认为是 Web 服务测试的实际标准。
以上文字引用自 Soap UI 网站本身。请访问 SOAP UI [^] 网站以获取有关安装和其他指南的更多详细信息。
创建用于 soapUI 测试的示例 Web 服务
我创建了一个小的示例 Web 服务,用于使用 Soap UI 进行测试。该 Web 服务包含 4 个虚拟方法:Addition()
、Subtraction()
、Multiplication()
、Division()
和 getmessage()
。我展示了在数据传输过程中如何检查 Soap 请求和响应。
看看这个 Web 服务。

以下是我的 WSDL URL
https:///MyWebService/Service.asmx?WSDL
下面是我讨论过的那些方法的示例代码
//Get Sample Message from Web Service
[WebMethod]
public string GetMessage() {
return "Sample Web Service For Test with soapUI";
}
// Add two number
[WebMethod]
public int Addition(int a,int b)
{
return a + b ;
}
//Subtract Two number
[WebMethod]
public int Subtraction(int a, int b)
{
return a - b;
}
//Multiply Two Number
[WebMethod]
public int Multiplication(int a, int b)
{
return a*b;
}
//Division of Two number
[WebMethod]
public float Division(int a, int b)
{
return a/b;
}
开始使用 soapUI 进行测试
我希望您已经浏览了 soupUI 网站并完成了必要的安装。现在开始 soapUI。
打开 SoapUI
一开始,它会启动一个命令提示符来初始化 soapUI 工具。它看起来像这样:

同时,soapUI 的 UI 将打开,它看起来像这样:

启动一个新项目
因此,在开始测试我们的 Web 服务之前,我们必须从 文件 > 新建 soapUI 项目 创建一个新项目。将出现以下屏幕:

在此屏幕上,我们需要提供项目名称和 WSDL URL。我已经用红色标记了该区域。提供两项信息后,单击“确定”。单击“确定”按钮后,soapUI 将开始加载 Web 服务的请求和响应定义。在此过程中,它将显示一个进度条:

探索 soapUI
完成此过程后,请查看导航器面板,您可以在其中看到一个已创建的项目名称,并且您的 Web 服务的所有方法都带有默认请求。

在导航器窗口的底部,您可以查看我们 Web 服务的属性,其中包括 端口类型、WSDL URL、绑定、SOAP 版本
等。

同样,如果我们单击特定方法,我们还将获得每个方法的 SOAP Action 头、类型、描述 等详细信息。例如,如果我单击“Addition()
”方法,属性窗口将显示以下内容:

检查 SOAP 请求
现在,我们来谈谈重点。这与 SOAP 请求有关。我们可以轻松获取任何特定方法的 SOAP 请求。例如,如果我们单击 Addition()
方法的请求,它将显示 Addition
方法的以下 SOAP 请求。因此,在检查 SOAP 请求之前,请快速看一下 Addition()
方法。它大致是这样的:
// Add two number
[WebMethod]
public int Addition(int a,int b)
{
return a + b ;
}
因此,此 Web 方法接受两个整数参数并返回这两个数字的总和作为整数。现在,查看该方法的 SOAP XML 格式。

在 SOAP 请求中,它清楚地显示了接受的参数。现在,如果我们向该 SOAP 请求传递一些参数,让我们看看 SOAP 响应。
检查 SOAP 响应
例如,我将 1 和 2 作为 SOAP 请求的参数,然后单击“运行
”按钮,它将给出以下输出:

从 SOAP 响应中,我们可以轻松理解我们的 Web 服务正在返回有效数据。如果我们单击 RAW 选项卡,我们将获得请求和响应的 RAW XML 格式。
我解释的例子是针对一个简单的方法。我们也可以测试许多复杂的方法。
摘要
这不是一篇关于 Web 服务、SOAP 请求或 SOAP 响应的说明文章。本文重点介绍 Web 服务开发完成后如何对其进行测试。SOAP UI 是测试 Soap 请求和响应的最佳 Web 服务测试工具之一。在本文中,我仅解释了该工具的基本概述。也许稍后,我会介绍该工具的一些高级功能。希望这对您将来测试 Web 服务有所帮助。请提出您宝贵的建议和反馈。
关注点
这是一个很棒的工具,可以测试我们的 Web 服务,确保在交付给客户之前它工作正常。
历史
- 2009 年 8 月 9 日:初始发布