Skip to content
This repository has been archived by the owner on Jul 30, 2019. It is now read-only.

Testing Storage

Julian Harty edited this page Nov 23, 2016 · 4 revisions

#Testing Storage Android devices can offer a range of different storage options, ranging from a single small internal area to devices that support OTG USB drives and/or removable SD-cards. Early releases of Android offered a single logical /sdcard/ location. However the current range of Android releases that Kiwix supports multiple storage locations.

Specific models of Android devices are predicatable in terms of the features they offer. Yet the combination of various changes in the Android platform, and the more recent options users have to allow/deny and reset permissions means the testing may become more complex than we'd first consider. Also users can often change removable storage from run to run of the kiwix app, and even potentially while the app is running.

##Testing ideas Here are some initial testing ideas for testing storage

###Potential permutations

Device type
Single internal storage
Single external, removable storage
Dual storage, internal non-removable, external removable
Poly storage: e.g. OTG, internal and external storage options
Android version Key characteristics
<= 4.3
4.4
>= 6.0

Note: this table is clearly incomplete and provisional.

Capacity Remarks
< size of zim file to download Download shouldn't start as the download won't complete successfully.
100% to 110% of size of zim file to download Device could easily run out of working storage.
Partition format Remarks
FAT32 Maximum file size is 2GB
exFAT Some devices may not support this format. TBC
Other How should the app handle this?

##Further reading While we try to make sense of the many and various behaviours, here are some external links that may help us find ways to improve the app and devise better and more thorough tests.

http://stackoverflow.com/questions/5694933/find-an-external-sd-card-location/38930531#38930531

http://stackoverflow.com/documentation/android/150/storing-files-in-internal-external-storage#t=201611222157357354527 provides a helpful explanation of terminology which may demystify some aspects of the challenge.

https://source.android.com/devices/storage/config.html One of a set of related articles on how the Android OS handles storage. The articles describe the changes that have happened in various Android releases. These are useful background reading, they don't cover storage from the perspective of an app.

https://possiblemobile.com/2014/03/android-external-storage/ A very detailed explanation of changes introduced in KitKat.

Clone this wiki locally