设计模式来测试RESTful服务

时间:2011-11-10 20:30:23

标签: java spring testing rest

控制器由两个主要部分组成:

  • 映射网址
  • 方法内的代码

编写测试用例时,有两个部分需要测试。

  • 测试网址和映射
  • 映射后测试函数内的代码

使用经典测试用例,使用模拟HttpServletResponse等,使用RESTtemplates(而不是使用curl)是很重要的事情。

问题是:使用哪一种,如何使用它们,如何将它们组合起来并且需要在逻辑上将两个测试部分分开?

用于测试RESTful服务的模式类型。

1 个答案:

答案 0 :(得分:1)

首先:

  • 好的测试发现错误。 (测试现在一定不能找到错误,当他们发现任何人正在改变任何东西的时候,他们也会发现错误。)
  • 测试不好没发现错误。 (如果单个测试从未失败,整个项目开发或维护,那么测试就没用了。
  • 测试从未证明没有错误!

因此,当我编写测试时,我会尝试尽可能简单地编写它们,但也会尝试测试我认为可能出错的所有内容。

例如你的Restfull服务:

当然逻辑中可能存在许多错误,因此需要为它们编写大量测试。但是这个测试可以直接调用该方法,使其相对易于编写测试。通过一些HTTP调用来调用方法比使用方法更容易。

但是当然在HTTP邀请中可能存在错误,因此必须对其进行测试。但是因为我已经测试了"代码"我正常的单元测试。我只需要那么多难以写的测试。而且这个测试更多地关注错误映射或错误的血清化可能导致的错误。

所以最后:使用你可以编写的所有类型的测试(单元测试,Mocked Stuff,HttpUnit测试,Selenium,......)。但首先要考虑你想要测试的问题。选择那种可以轻松编写和维护测试用例的测试。


Btw @see RestFuse - JUnit扩展