什么是测试Web服务的工具和最佳实践?

时间:2009-09-18 20:16:28

标签: java web-services testing wsdl testing-strategies

我即将开始一项涉及提供大量网络服务的大型项目的工作。

我们将使用Java平台,所以,当然,我们将大量使用JUnit,Hudson等(虽然我不确定这些是否重要。)

我们正在寻找一套用于测试Web服务的最佳实践和/或工具。我们会考虑几个目标:

  1. 显然,我们需要证明服务行为正确。这意味着发出Web服务调用,接收响应(检查它们的正确性),然后,可能发出另一个Web服务调用,以确保系统处于我们希望它处于原始后调用的新状态(并且,显然,检查响应的正确性。)

  2. 我们需要收集回复时间。

  3. 我们必须能够自动执行测试用例(jUnit样式,但针对正在运行的系统,而不是针对单个代码单元。)

  4. 如果非开发人员(技术业务用户)可以“编写”测试用例,那将是非常酷的。他们不是XML专家(并且永远不会),所以期望他们创建XML文件是不现实的。但他们是主题专家,所以给他们一个“形式”来填写生成XML文件是切合实际的。然而;我们可能会有太多不同的服务来定制这些“形式”。

  5. 任何想法,最佳实践或经验教训都将受到赞赏。

2 个答案:

答案 0 :(得分:7)

SOAPUI 这是用于测试Web服务的最佳开源工具。您可以创建单元测试,它甚至有一个表单接口,它将读取wsdl并创建一个表单来调用服务。

Fiddler 您需要查看线路上的请求和响应。这是至关重要的,因为大多数工具包都不容易看到究竟是来回传递的内容。

XMLSPY 这是一个付费程序,但它有非常非常干净的界面。 IT可以轻松调试xml文件,并允许您调用服务。它重新格式化了格式错误的XML,并且在许多情况下都是救命稻草。如果你能负担得起它就可以了!

答案 1 :(得分:4)

我们最初使用SOAPUI进行功能测试。但是,SOAPUI不适合回归和负载测试。

下一步,我们将XML加载到JMeter

它可以驱动多台机器的负载,我们可以轻松地将服务器压到极限。