我需要测量我的 JUnit 测试消耗了多少内存。
因此,最明显(但不方便)的方法是使用诸如“-Xms128m -Xmx512m”之类的参数运行 JVM,并跟踪我何时会收到 OutOfMemory 错误。
第二种方法是在运行我的所有测试后请求堆转储,然后使用内存分析器工具。但每次运行测试时都这样做没有用。
比方说,理想的方法是将内存消耗记录到一个文件中,其中包含最大内存消耗、平均消耗、GC 调用计数等值。或者甚至绘制一个图表来显示内存的使用情况。
问题是,是否有任何工具、方法或工具可以做到这一点?或者,也许,我的愿望是不真实和幼稚的,没有办法收集这样的数据?
测试在使用 JUnit4 的 IntelliJ Idea 下运行。我可以自由使用任何其他环境。在此先感谢您的任何建议!
最佳答案
您可以使用 JConsole,
http://docs.oracle.com/javase/6/docs/technotes/guides/management/jconsole.html
它是你的 JDK 自带的
关于java - 在运行 JUnit 测试时测量内存消耗的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17090643/