java.sql.SQLIntegerityConstrainVionlationException:Duplicate entry ‘xxx‘ for key ‘xxx.PRIMARY‘(已解决)

在执行单元测试时遇到`java.sql.SQLIntegrityConstraintViolationException`,提示主键'Duplicate entry 'xxx' for key 'xxx.PRIMARY'`。问题起因是使用Maven的maven-surefire-plugin导致测试执行了两次。解决方案是配置maven-surefire-plugin以避免重复执行测试,从而防止数据冲突。
摘要由CSDN通过智能技术生成

org.apache.ibatis.exceptions.PersistenceException:Cause: java.sql.SQLIntegerityConstrainVionlationException:Duplicate entry ‘xxx’ for key ‘xxx.PRIMARY’(已解决)

问题来源描述:
1.构建maven项目,在test文件夹中进行单元测试。
2.测试的内容是对数据库表进行插入
3.但是运行时发现报错,大概意思就是id重复。那么问题来了,我只插入一次 怎么会id重复?

经过检查最后修改maven插件maven-surefire-plugin

maven-surefire-plugin简介

Maven本身并不是一个单元测试框架,它只是在构建执行到特定生命周期阶段的时候,通过插件来执行JUnit或者TestNG的测试用例。这个插 件就是maven-surefire-plugin,也可以称为测试运行器(Test Runner),它能兼容JUnit 3、JUnit 4以及TestNG。

在默认情况下,maven-surefire-plugin的test目标会自动执行测试源码路径(默认为src/test/java/)下所有符合一组命名模式的测试类。这组模式为:

**/Test*.java:任何子目录下所有命名以Test开关的Java类。
**/*Test.java
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值