【问题标题】:Is there any way to breakpoint inside the tested classes?有没有办法在测试类中设置断点?
【发布时间】:2012-07-16 09:10:42
【问题描述】:

这是我的场景:

  1. 我有一个 Android 服务 (CoreService)
  2. 我用ServiceTestCase<CoreService>来测试一下
  3. CoreService 产生一个线程并实例化几个具有侦听器/回调的类。

有没有办法在生成的线程和/或回调中设置断点并让 JUnit 在这些处停止?它只在 JUnit 项目或 CoreService 类中设置的断点处停止。

【问题讨论】:

  • 你在使用 Java 6 update 16+ 吗?
  • 我看到很多与OpenJDK相关的断点错误。两者都得到积极维护。尝试使用 Sun Java 6 Update 16+(修复了一些断点错误)看看它是否有效。

标签: android eclipse service junit


【解决方案1】:

尝试将断点暂停策略更改为暂停虚拟机

全局更改:

有关断点暂停政策的更多信息,请查看here

【讨论】:

  • 感谢您的回答。不幸的是,为时已晚,因为我删除了 JUnit 测试项目。我会尝试一下,但我非常怀疑这是问题所在,因为在其他情况下,它确实会在断点处停止,甚至在不同的进程(不仅是线程)上设置。它只是不适用于 JUnit...
  • 这是我们在 Java EE 应用程序中用于调试线程的常规方式。出于您的考虑,我已经测试了自己(调试 Android JUnit 测试)并且可以确认它确实很棘手。我在 GitHub here 中创建了简单的项目进行演示。
  • 感谢您的宝贵时间,我会尽快测试。
猜你喜欢
  • 1970-01-01
  • 2011-05-16
  • 2016-11-03
  • 1970-01-01
  • 2012-03-09
  • 2013-01-13
  • 1970-01-01
  • 1970-01-01
  • 2016-03-30
相关资源
最近更新 更多