13

通常我使用adb shell am instrument -w com.android.contacts.tests/android.test.InstrumentationTestRunner. 它确实有效,它将运行我所有的测试。

但是当我在运行junit时设置断点并希望进入调试模式时,它失败了。当我调试普通的android应用程序时,我制作断点的方式有效。

所以我搜索了网页,并尝试了类似的东西adb shell am instrument -e debug true -e class com.android.contacts.AndroidUtilsTest -w com.android.contacts.tests/android.test.InstrumentationTestRunner,但仍然没有运气。你的如何解决这个问题?我不仅想调试junit类,还想调试普通项目中的代码。

4

3 回答 3

7

我猜您正在尝试使用 Eclipse 调试您的测试。如果是这种情况,您只需选择您的测试项目,右键单击,Debug As... -> Android JUNit 测试,执行将在您在测试或代码中设置的断点处停止。

于 2012-06-08T01:56:09.227 回答
3

我刚刚找到了答案。当我启动仪器时它会阻塞,因为它正在等待我设置断点。所以在我设置断点之后,junit 开始运行。所以调试一个android junit项目的顺序是:

  1. 在调试设置为 true 的情况下启动仪器。
  2. 使用命令行或 eclipse 设置断点。
  3. 仪器将开始自动运行。
于 2012-06-08T01:49:11.013 回答
0

要调试 Android JUnit 测试,不要忘记放入debuggable=true可测试的项目。

于 2014-02-07T15:14:18.933 回答