为自定义spring validator类编写junit

时间:2012-02-08 13:56:29

标签: spring junit validation

如何为自定义spring验证器实现类编写单元测试用例。例如

public class RegistrationValidator实现Validator。

只是想知道各种方法。我是春天的新手,所以探索所有选择。

谢谢, 小号

1 个答案:

答案 0 :(得分:3)

创建一个Errors对象, 创建验证器的实例

调用yourValidator(testData,errors)

根据testData

检查是否按预期方式修改了错误
@Test
public void testValidateWithUserWithoutLogin() {
    User u = new User(); //your domain object, for example a user with "login=null"

    Errors errors = new BeanPropertyBindingResult(u, "u");

    MyValidator validator = newValidator();

    validator.validate(p, errors);  // 'validator' under test

    assertTrue(errors.hasErrors());
    assertNotNull( errors.getFieldError("login") );
}

顺便说一下:你应该看看JSR 303-Bean Validation,Spring 3.0也支持它。但对于大多数用例来说,使用(代码较少)更容易。