java - 如何在 Eclipse 中调试类似于常规 Java 程序的 JUnit 测试

标签 java eclipse debugging junit

在 Eclipse 中,如果我在没有断点的 Debug模式下运行 Java 程序,并且如果 JVM 遇到 NullPointerException,Eclipse 会高亮显示有问题的代码行,并显示局部变量等。执行被暂停。我可以使用“显示”选项卡来评估代码,等等。

但是,如果我在 Debug模式下运行 JUnit 测试,并且 jvm 遇到 NullPointerException,则 jvm 不会暂停,并且我没有机会看到局部变量。

是否可以运行 JUnit 测试,以便 JVM 在我遇到 NullPointerException 时自动暂停,而不使用断点?

编辑: 使用 JUnit 4 和 Juno

最佳答案

当抛出的异常未被捕获时Eclipse 会停止,并将您从main() 中剔除。但是,当您使用 JUnit 框架运行时,所有异常都会被 JUnit 捕获,因此 Eclipse 不会停止。

想到两个解决方案:

  • 设置异常断点以在 NullPointerException 被抛出时停止
  • 使用 JUnit 报告的异常堆栈跟踪,并在引发异常的行设置断点(这是我更喜欢的那个)。

关于java - 如何在 Eclipse 中调试类似于常规 Java 程序的 JUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14991682/

相关文章:

eclipse - 如何使用Eclipse进行Scheme开发?

java - 将数据库 ID 添加到 Eclipse 组合

java - 读取外部文本文件并存储到数组中

java.lang.OutOfMemory错误: Java heap space while downloading a large file from an URL

java - Java Salesforce 应用程序中的 "Could not find the main class"

javascript - 为什么对 IDBObjectStore.get() 的调用会导致混淆行为?

android - 错误 : device offline

visual-studio - 如何单步执行整个代码块?

java - Opengl ES glGetAttribLocation问题! 0x0502 错误

java - Java 中的 Perlin 噪声