直接对条纹验证注释进行单元测试

发布于 2024-08-15 06:29:45 字数 176 浏览 11 评论 0原文

Stripes 允许您使用成员变量上的 @Validate 注释来验证表单输入值。有谁有直接测试这些注释的经验。我可以通过测试从 ActionBean 返回的验证错误来做到这一点,但这似乎有点冗长,我想要一种更直接的方法来测试输入值是否有效。

我对框架的内部结构还不太熟悉,我希望有人能给我一些从哪里开始的指导。 TIA。

Stripes allows you to validate your form input values using the @Validate annotation on your member variables. Does anyone have any experience testing these annotations directly. I could do this by testing the validation errors that come back from the ActionBean, but this seems a little long winded and I would like a more direct method of testing if an input value is valid.

I'm not that familiar with the innards of the Framework yet, and I was hoping someone could give me some direction on where to start. TIA.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

满意归宿 2024-08-22 06:29:45

我使用的一种方法是 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() 并断言您的错误就在那里。

One method I've used is Stripes' built in MockRoundtrip. It is useful for simulating a complete test of an action bean event outside the container.

Example from the documentation:

 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");

Additionally, you could use trip.getValidationErrors() and assert that your error is in there.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文