首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为JERSEY web服务编写测试用例的最佳方式是什么?

为JERSEY web服务编写测试用例的最佳方式是什么?
EN

Stack Overflow用户
提问于 2009-05-26 17:24:10
回答 6查看 11.2K关注 0票数 12

我有一个用Jersey库实现的JAX-RS服务,现在我想测试它。为了做到这一点,我想在我的测试中托管这个服务,方法是用模拟服务预初始化它。

托管此类服务并执行测试调用的最佳方式是什么?

代码语言:javascript
复制
@Path("/srv")
public class MyService
{
   @GET
   public void action(@Context UriInfo uri)
   { ... }
}

@Test
public void myTest()
{
   MyService service = new MyService();
   service.setSomething(...);

   // How do I host it?

   // How do I call it?
}
EN

回答 6

Stack Overflow用户

发布于 2009-08-27 06:39:11

新的(修订的) Jersey测试框架是Jersey 1.1.2-ea版本的一部分,现在支持进程内或内存中的测试。为了在内存中运行您的测试,您需要做的就是将属性test.containerFactory设置为com.sun.jersey.test.framework.spi.container.inmemory.InMemoryTestContainerFactory,,即按如下方式运行您的测试:

mvn clean test -Dtest.containerFactory=com.sun.jersey.test.framework.spi.container.inmemory.InMemoryTestContainerFactory -DenableLogging

有关更多详细信息,请在http://blogs.oracle.com/naresh上查看标题为Jersey测试框架重新访问!的博客条目。

票数 9
EN

Stack Overflow用户

发布于 2009-06-09 07:02:52

我相信Jersey Test Framework为您的需求提供了一个解决方案。它允许您部署单个服务,并运行其所有测试。您可以使用该框架对Grizzly Web Container、嵌入式GlassFish和/或HTTPServer运行测试。

请注意,您也可以使用该框架在常规web容器(如GlassFish和Tomcat )上运行测试。如果您还有任何疑问,请随时发送给我或泽西用户的邮件列表- users@jersey.dev.java.net一封电子邮件。

票数 5
EN

Stack Overflow用户

发布于 2009-05-28 17:10:50

我还没有尝试过,但是像HtmlUnit或HttpUnit这样的JUnit扩展可能是测试JAX-RS/Jersey服务的好方法。测试用例可以使用XPaths查找预期的返回值,并根据预期的返回值验证返回值。有关详细信息,请参阅:http://htmlunit.sourceforge.net/gettingStarted.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/911813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档