【发布时间】:2010-12-15 04:28:35
【问题描述】:
大家好,我在测试中遇到了一个奇怪的行为。我正在使用 JPA hibernate annotation 和 spring。
假设我有一个 MyObject 类,它的属性电子邮件已标记
@Column(name="EMAIL", length=100, unique=true)
private String email;
我在设置这个类MyObjectDAOImplTest时为我需要在数据库中做准备
@Autowired
MyObject1 ob1;
@Autowired
MyObject1 ob2;
@Before
public void setUP(){
dao = manager.createthedao();
....
ob1.setEmail("some@email.com");
....
....
ob2.setEmail("someother@email.com");
....
dao.save(ob1);
dao.save(ob2);
}
所以我的第一个测试方法的一部分所有的其余都失败了。我是关于电子邮件列上的重复值,但我的 hbm2ddl.auto=create,我什至使用了 create-drop。但仍然。我只是不明白。我在很多项目中都使用过这个,当然没有唯一的,但我希望每次运行测试方法时都会删除数据库。关于唯一我应该注意什么吗?感谢阅读。请给我您的建议。我是遗漏了什么还是没有做一些?
【问题讨论】:
标签: java unit-testing hibernate jpa spring