Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to enter debug mode for android when running junit test?

Usually i run a junit test using adb shell am instrument -w com.android.contacts.tests/android.test.InstrumentationTestRunner. And it actually works, it will run all my tests.

But when i make a breakpoints and wish to enter debug mode when running junit, it failed. The way i make breakpoints works when i debug normal android app.

So i searched web, and try something like adb shell am instrument -e debug true -e class com.android.contacts.AndroidUtilsTest -w com.android.contacts.tests/android.test.InstrumentationTestRunner, but still without luck. How do yours solve this problem? I not just want to debug the junit class, but also the code in normal project.

like image 453
Frank Cheng Avatar asked Jun 08 '12 01:06

Frank Cheng


2 Answers

I guess you are trying to debug your tests using Eclipse. If this is the case you can just select you test project, right click, Debug As... -> Android JUNit test and the execution will stop at the breakpoints you set in your tests or in your code.

like image 110
Diego Torres Milano Avatar answered Oct 31 '22 11:10

Diego Torres Milano


I found the answer just now. It will block when i start instrument since it is waiting for me to set a breakpoint. So After i make a breakpoint, then the junit start to run. So the sequence of debug a android junit project is :

  1. start instrument with debug set true.
  2. make a break point using command line or eclipse.
  3. the instrument will start to run automatically.
like image 39
Frank Cheng Avatar answered Oct 31 '22 12:10

Frank Cheng