Java 具有绝对外部url的Wicket tester页面
我有一个servlet,它进行一些业务登录,然后通过绝对url重定向到wicket页面,因为页面是用QueryStringUrlCodingStrategy定义的 现在我需要测试调用servlet url是否会重定向到正确呈现的wicket页面 所以我需要做一些类似的事情:Java 具有绝对外部url的Wicket tester页面,java,servlets,wicket,Java,Servlets,Wicket,我有一个servlet,它进行一些业务登录,然后通过绝对url重定向到wicket页面,因为页面是用QueryStringUrlCodingStrategy定义的 现在我需要测试调用servlet url是否会重定向到正确呈现的wicket页面 所以我需要做一些类似的事情: MockHttpServletRequest servletRequest = tester.getServletRequest(); String url = "http://localhost" + servletReq
MockHttpServletRequest servletRequest = tester.getServletRequest();
String url = "http://localhost" + servletRequest.getServletPath() + "" + servletRequest.getContextPath() + "/myservlet?param1=value1¶m2=value2¶m3=value3";
tester.getServletRequest().setURL(url);
tester.processRequestCycle();
tester.assertRenderedPage(ExpectedPage.class);
但是测试人员无法识别绝对url。问题是servlet在测试中不可用,因为它是在web.xml中定义的,并且仅与servlet容器一起部署
我解决了实例化Servlet并手动调用onGet方法来获取重定向url以用于呈现Wicket页面的问题。拆分测试不是更容易吗?一个测试是否创建了正确的url,一个测试是否使用给定参数正确呈现页面?