条纹允许您使用成员变量上的@Validate批注来验证表单输入值。有没有人有直接测试这些注释的经验。我可以通过测试从ActionBean返回的验证错误来做到这一点,但这似乎有些麻烦,我希望有一种更直接的方法来测试输入值是否有效。
我对框架的内幕还不那么熟悉,我希望有人能给我一些指导,从哪里开始。 TIA。
最佳答案
我使用的一种方法是内置在MockRoundtrip中的Stripes。对于模拟容器外部的动作Bean事件的完整测试很有用。
文档中的示例:
MockServletContext context = ...;
MockRoundtrip trip = new MockRoundtrip(context, CalculatorActionBean.class);
trip.setParameter("numberOne", "2");
trip.setParameter("numberTwo", "2");
trip.execute();
CalculatorActionBean bean = trip.getActionBean(CalculatorActionBean.class);
Assert.assertEquals(bean.getResult(), 4, "two plus two should equal four");
Assert.assertEquals(trip.getDestination(), ""/quickstart/index.jsp");
另外,您可以使用
trip.getValidationErrors()
并断言您的错误在那里。