小编pej*_*jas的帖子

junit测试中的spring-data-jpa bean验证

在我最近的工作中,我使用了spring-data-jpa来利用提供的存储库.当涉及集成测试时,我无法配置(我假设)测试的spring上下文,并且作为结果bean验证在我的测试中不起作用.

我知道我可以注入验证器,并对我的注释进行单元测试,但事实并非如此.我正在编写集成测试,并希望在支持DB的情况下测试存储库.

我准备了简单的项目来显示所有必要的项目文件.

当我运行测试时,2会失败并且我不知道为什么,类路径上存在hibernate验证器.

Failed tests:   insertWrongEmail(com.example.core.data.jpa.UserRepositoryTest): Expected ConstraintViolationException wasn't thrown.
insertToShortPassword(com.example.core.data.jpa.UserRepositoryTest): Expected ConstraintViolationException wasn't thrown.
Run Code Online (Sandbox Code Playgroud)

[..]

Apr 23, 2013 5:00:08 PM org.hibernate.validator.internal.util.Version <clinit>
INFO: HV000001: Hibernate Validator 4.3.1.Final
Run Code Online (Sandbox Code Playgroud)

源代码和mvn测试输出如下.

预先感谢您的帮助.

Java类(我删除了注释,geters,seters,equals,hashCode,toString等):

BaseEntity

package com.example.core.data.jpa;

import javax.persistence.*;

@MappedSuperclass
public abstract class BaseEntity {
    public static final String SEQUENCE = "global_seq";

    @Id
    @SequenceGenerator(name = SEQUENCE, sequenceName = SEQUENCE)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = SEQUENCE)
    @Column(name = "id")
    private Long id;

    public Long getId() {
        return id;
    }
}
Run Code Online (Sandbox Code Playgroud)

用户 …

java hibernate spring-test bean-validation spring-data-jpa

9
推荐指数
1
解决办法
8212
查看次数