spring junit重复键,但前三次重复

7tofc5zh  于 2023-03-16  发布在  Spring
关注(0)|答案(1)|浏览(90)

我运行junit测试,使用与主项目几乎相同的配置,在postgres中,类似于主项目,但在单独的测试数据库上。每次运行时,我插入准备好的测试数据。https://i.stack.imgur.com/tlb92.jpg"我测试服务方法“addCategory”,运行三次,我得到“重复键值违反唯一约束“category_pkey”"。第四次,实体得到id=4,一切正常。我尝试了不同的通用策略,但问题未解决
第一次运行时该测试如何工作?

bq3bfh9z

bq3bfh9z1#

代码可能更容易一些,但总的来说,在手动插入后,您应该让Hibernate知道下一个id是什么。例如,对于基于序列的,您应该:
1.未在插入脚本中使用定义的Id,并使用nextval()函数或指定Id
1.手动更新下一个序列值:alter sequence OBJECT_SEQ restart start with 4;

相关问题