Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 一些spring junit测试不';不要后退。因为内存不足的错误?_Java_Spring_Unit Testing_Oracle11g_Junit4 - Fatal编程技术网

Java 一些spring junit测试不';不要后退。因为内存不足的错误?

Java 一些spring junit测试不';不要后退。因为内存不足的错误?,java,spring,unit-testing,oracle11g,junit4,Java,Spring,Unit Testing,Oracle11g,Junit4,我有5000多个Spring单元测试,我知道每个测试都是针对OracleDB的,并且会进行回滚,因为我已经单独测试了每个测试。当我运行maven测试套件时,我最终发现内存不足错误,并且发现一些测试没有回滚。我通过在pom.xml中添加一个argLine参数修复了内存不足错误,这种情况不再发生。但我仍在试图找出内存不足错误是否导致回滚失败?或者是别的什么?如果内存不足是罪魁祸首,那么在代码中处理/解决此问题的最佳方法是什么?谢谢 内存不足错误是否会导致回滚失败?或者是别的什么 jvm在遇到OutO

我有5000多个Spring单元测试,我知道每个测试都是针对OracleDB的,并且会进行回滚,因为我已经单独测试了每个测试。当我运行maven测试套件时,我最终发现内存不足错误,并且发现一些测试没有回滚。我通过在pom.xml中添加一个argLine参数修复了内存不足错误,这种情况不再发生。但我仍在试图找出内存不足错误是否导致回滚失败?或者是别的什么?如果内存不足是罪魁祸首,那么在代码中处理/解决此问题的最佳方法是什么?谢谢

内存不足错误是否会导致回滚失败?或者是别的什么

jvm在遇到OutOfMemory错误后无法执行任何操作。因为spring启动了数据库事务,所以应该是需要调用
transaction.rollback()
的人。因为您的maven测试套件遇到OutOfMemory错误,所以从不调用回滚,这应该是根本原因

如果内存不足是罪魁祸首,那么解决此问题的最佳方法是什么

增加jvm堆大小可能会有所帮助

-Xms<size>        set initial Java heap size
-Xmx<size>        set maximum Java heap size
-Xss<size>        set java thread stack size

也许这就是你在maven的工作方式。

谢谢。很抱歉,我在发帖时应该说得更清楚一些。我已经通过在pom.xml中添加maven-surefire插件的argLine-param修复了内存不足的问题。现在没有发生内存不足的情况。我试图问当其他人运行测试时,如何解决一个问题,最终导致他们的机器内存不足错误,导致测试无法回滚。有什么建议吗?我现在正在编辑我原来的问题。请查收。
java -Xmx256m TestData.java