Skip to content

Automated Testing

Julian Harty edited this page Aug 14, 2019 · 2 revisions

The master branch is built and tested daily. As well as this pull requests are tested and required to pass before merging. The build is compile with Travis and then tested with TestDroid on a selection of devices. TestDroid passes its result to Travis and this either passes or fails the build.

At the moment basic instrumentation tests are in place to test key user interactions and these can be run locally in Android Studio with a physical device/emulator or in the cloud.

The app can be tested with Android Monkey. Here are example command lines to test the main app and one of the custom apps.

adb shell monkey -p org.kiwix.kiwixmobile --monitor-native-crashes -c android.intent.category.MONKEY -v 3300 -s 1

adb shell monkey -p org.kiwix.kiwixcustomphet --monitor-native-crashes -c android.intent.category.MONKEY -v 3300 -s 1

Some areas that we need to improve are:

  • Testing of custom apps
  • Testing of search
  • Testing of file system
  • Improving selection of TestDroid devices and workaround timeout issues

Some test releated issues are tracked here.