JerseyTest无法识别@WebFilter

时间:2014-10-10 21:56:25

标签: java servlets jersey junit4 jersey-2.0

我尝试使用jersey-test-framework-provider-grizzly2在Jersey REST Servlet上创建JerseyTest。

测试请求在grizzly中更正来自servlet的内容。

但是当启动servlet时,会有一个HTTPBasicAuth。 Auth是使用@WebFilter(" / *")org.apache.shiro.web.servlet.ShiroFilter完成的。

在JerseyTest期间,没有要求的Auth。 所以我的结论是@WebFilter注释无法识别。 JerseyTest只测试应用程序中的资源吗? 如何识别WebFilters?

感谢。

1 个答案:

答案 0 :(得分:0)

我想我可以自己回答; - )

它是泽西岛测试框架,没有" FullAppWithJerseyTest"框架。

我现在实现了像ServletJerseyTest这样的东西,扩展了JerseyTest。 它使用org.glassfish.jersey.test.external.ExternalTestContainerFactory.class和setUp()包含启动servlet容器并安装最新构建的WAR。

测试针对此容器运行。在tearDown()中,容器停止并安装WAR将被删除。

嵌入式Tomcat具有自行查找免费TCP端口的API,并且TestProperties.CONTAINER_PORT设置为选择端口。

现在测试按预期运行......