2008-11-20 85 views
23

还有一个类似的问题here但它只包含下面的一些问题。REST工具支持开发和测试

我们有一位客户需要使用REST的Web服务。

我们拥有大量的使用SOAP的经验,并且随着时间的推移,已经为SOAP开发和测试收集了一系列非常好的工具,

  • 的soapUI
  • Eclipse插件
  • WSDL2Java的
  • WSStudio

通过 “工具” 我的意思是产品的 “开箱即用”,我们可以开始使用。我不是在谈论使用Ajax或其他方法来切割代码来“滚动我们自己”。

为REST设置的工具似乎没有成熟?

  • 那里有什么工具(我们主要使用C#和Java)?

  • 这些工具是否处理GET,POST,PUT和DELETE?

  • 是否有一个体面的Eclipse插件?

  • 是否有像WSStudio这样一个体面的客户端测试应用程序,您可以将工具指向WSDL,并使用适当的方法和输入即时生成代理,并且您可以简单地键入数据?

  • 有没有什么好的包监控工具可以让你查看数据? (我没有考虑像Wireshark这样的嗅探器,而是像soapUI那样允许你看到请求/响应的东西)?

回答

5

在Java方面,有JAX-RS API,它是使用Restful Services或类似方法的Java Api for Java。基本上,JAX-RS提供了一种更加标准的方式来构建Java中的RESTful服务。

还有Restlet,它允许轻松开发Restful服务并基于JAX-RS规范。

此外,结帐SOAP-UI最近添加了很好的REST支持。

http://www.restlet.org/

http://jcp.org/en/jsr/detail?id=311 - JAX-RS

http://www.eviware.com/content/view/134/1/ - SOAP-UI

http://sourceforge.net/projects/soapui - SOAP-UI

+0

https://restclientgui.codeplex.com – 2014-05-15 09:50:21

1

我想强调的是,项目的Restlet支持两种API来开发RESTful应用程序:

  • 核心的Restlet API:基于类的,客户端和服务器端,多协议,非常大的特征范围
  • JAX-RS API:注释为主,唯一的服务器侧,较小的特征范围

Restlet可以在Servlet容器,独立(纯JVM),GWT中为客户端,在Spring中,在Mule ESB或OSGi容器中部署。这里是完整的list of features

此致

Jerome Louvel

+0

谢谢杰罗姆,好点。 – Mark 2008-11-20 09:33:53

+0

当然,问题是关于工具,而不是关于API。 – 2008-11-20 11:05:31

9

对于初学者来说,需要一个工具,可以构造任意的HTTP请求(包括标头诸如内容类型,HTTP方法,HTTP认证,请求体)和检查HTTP响应(包括状态码,标题和响应主体)。如果它是可编写脚本的工具很好。

看一看:

自动生成一个代理我猜你正在寻找解析WADL,这是对WSDL的REST答案。不幸的是,我不知道这样的事情。

+0

为了完整起见,soapUI似乎已经添加了WADL支持。 – wwerner 2010-07-27 13:22:21

0

SOA清洁,是一个测试工具,测试肥皂和休息(也是WCF,但似乎你不需要该功能)。它非常直观,可用。用.NET编写。免费版本也可用。可以从http://xyrow.com下载。祝你好运!

6

我发现了一个名为Poster的漂亮的Firefox插件,它允许您充当类似于休息客户端和其他客户端的REST客户端。我希望它会响应一个Firefox标签(而不是自定义的输出窗口),这样任何返回的XML都可以通过Firefox的令人敬畏的语法突出显示来着色。但总体来看似乎还行。

更新:哦,甚至更好。我发现另一个Firefox插件叫做RestClient https://addons.mozilla.org/en-US/firefox/addon/9780。这似乎做了语法突出显示。

0

在客户端测试应用程序方面,我有类似的问题。我找不到可用于快速测试进出我创建/使用的Web服务的数据的工具。所以我使用C#.NET创建了自己的工具。它本质上是一个客户端应用程序,您可以在休息服务上使用GET,POST,PUT和DELETE查询。

该软件被称为REST Scratch Pad。它允许您输入要发送到REST服务的数据,并查看查询结果及其标题和响应时间。它将处理基本身份验证,并会记住您之前会话中使用的URL(以避免重新输入长URL)。

当前版本是免费的。下一个版本将使用.NET的更新版本,并涵盖更多认证方法。

REST ScratchPad

3

最简单的和最佳的客户端工具来测试您的REST API调用是一个Firefox插件RESTClient

安装添加并测试API调用。

-1

SoapUI尽管有其名称,但也可以支持REST请求。由于REST通常不提供任何类似于WSDL的东西,因此您可以自行创建Web界面所需的请求。根据REST Web服务的复杂性,这可能是从微不足道到苛刻的任何事情,但它应该至少能立即为您带来一些结果。

0

REST网络服务的一个很好的测试仪是HttpMaster

它支持各种http方法,并允许您监视完整的请求/响应数据。您也可以使用动态参数来执行一组请求,它也支持简单的响应数据验证。它很容易使用,但它只能在Windows上运行(这是一个.NET应用程序)。

0

您可以试试REST Assured库,这使得从Java测试REST服务变得非常容易。例如因为你的资源被称为“问候”,并返回以下JSON:

{ "greeting" : { "firstName" : <first_name>, "lastName" : <last_name> } } 

,你可以像这样的放心测试:从下载部分

given(). 
     param("first_name", "John"). 
     param("last_name", "Doe"). 
when(). 
     get("/greeting"). 
then(). 
     statusCode(200). 
     body("greeting.firstName", equalTo("John"). 
     body("greeting.lastName", equalTo("Doe");