• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# LoWPAN Unit Tests
2This package contains unit tests for the android LoWPAN framework System APIs based on the
3[Android Testing Support Library](http://developer.android.com/tools/testing-support-library/index.html).
4The test cases are built using the [JUnit](http://junit.org/) and [Mockito](http://mockito.org/)
5libraries.
6
7## Running Tests
8The easiest way to run tests is simply run
9
10```
11frameworks/base/lowpan/tests/runtests.sh
12```
13
14`runtests.sh` will build the test project and all of its dependencies and push the APK to the
15connected device. It will then run the tests on the device.
16
17To pick up changes in framework/base, you will need to:
181. rebuild the framework library 'make -j32'
192. sync over the updated library to the device 'adb sync'
203. restart framework on the device 'adb shell stop' then 'adb shell start'
21
22To enable syncing data to the device for first time after clean reflash:
231. adb disable-verity
242. adb reboot
253. adb remount
26
27See below for a few example of options to limit which tests are run.
28See the
29[AndroidJUnitRunner Documentation](https://developer.android.com/reference/android/support/test/runner/AndroidJUnitRunner.html)
30for more details on the supported options.
31
32```
33runtests.sh -e package android.net.lowpan
34runtests.sh -e class android.net.lowpan.LowpanManagerTest
35```
36
37If you manually build and push the test APK to the device you can run tests using
38
39```
40adb shell am instrument -w 'android.net.wifi.test/android.support.test.runner.AndroidJUnitRunner'
41```
42
43## Adding Tests
44Tests can be added by adding classes to the src directory. JUnit4 style test cases can
45be written by simply annotating test methods with `org.junit.Test`.
46
47## Debugging Tests
48If you are trying to debug why tests are not doing what you expected, you can add android log
49statements and use logcat to view them. The beginning and end of every tests is automatically logged
50with the tag `TestRunner`.
51