代码之家  ›  专栏  ›  技术社区  ›  Jon

是否有测试工具来测试包含复杂类型的C.NET Web服务?

  •  4
  • Jon  · 技术社区  · 15 年前

    我已经构建了一个以复杂类型为参数的C.NET Web服务。是否有一个测试工具可以针对我的Web服务运行,并将所有值传递给复杂的参数类型?

    一些背景信息: 我对XSD运行了xsd.exe工具,并创建了一个.cs类。该.cs类具有用作我的复杂参数的数据集。现在,我需要测试我的WebMethod,并像客户机那样将值传递给它。我试过了 WebService Studio Storm 但似乎这两种产品都不能处理复杂的类型。有其他产品可以做到这一点吗?或者我是否从头开始编写自己的测试应用程序?

    5 回复  |  直到 13 年前
        1
  •  2
  •   John Saunders    15 年前

    soapUI 会帮助你做到这一点。

    但是,我通常这样做的方式是使用nunit或mstest编写自动单元测试,添加服务引用,然后只编写测试。这还有一个额外的好处,那就是您创建的客户机代码与您的用户需要做的相同。如果你的服务很难用,你会很快发现的。

        2
  •  4
  •   Randy Levy    13 年前

    对于经典的ASMX服务,我使用了WebServiceStudio2.0,它处理了我抛出的每一个复杂类型。您可以从 http://archive.msdn.microsoft.com/webservicestudio20/ .

    我知道在codeplex上有一个您链接到的更新版本,它看起来像是被更新以支持复杂类型。(前一段时间,codeplex上有一个无用的工具,不能执行复杂的类型。)

    只是好奇您在Web Service Studio中遇到了什么具体问题?

    更新:重新阅读您的问题后,听起来您在服务中使用了一个数据集。如果是这样,那么在使用大多数工具包中的服务时,就会出现互操作性问题;因为数据集是“动态”类型,所以它们无法处理该数据集。解决这个问题的最简单方法是 avoid DataSets .

    如果是这样的话,那么我同意其他人的观点,即您需要创建自己的.NET应用程序来使用您的服务。

        3
  •  3
  •   Gram    15 年前

    我将使用Visual Studio和引用Web服务的Windows窗体来测试它。在这个Windows窗体中,您可以使用nunit、fit或任何您通常用来测试应用程序的工具。如果在调试中同时运行Web服务和Windows窗体,则可以遍历代码以查看结果。

    这是我使用的方法,我从未真正听说过.NET Web服务中使用自定义类型的其他方法。

        4
  •  1
  •   Yvo    15 年前

    抓取一个Visual Studio Express的副本(如果没有完整版本)并创建一个Windows应用程序,添加一个WebReference并测试它,难道不容易吗?

    应该比我读这个问题花费更少的时间;) (不,我不是一个迟钝的读者)

        5
  •  1
  •   Andrej Golcov    14 年前

    对于简单的情况,可以使用Visual Studio 2008中引入的WCF测试客户端(wftestclient.exe)。在上查找更多信息 http://msdn.microsoft.com/en-us/library/bb552364.aspx

    soapui适用于更复杂的情况。