Androidアプリ開発にて、テスト中に確認する項目をメモっておきます。
Android開発経験1ヶ月程度の人間が書いてるので、間違ってるかもしれません。
必要に応じて、ちょくちょく追加・修正予定です。
iOS編も作りました
確認項目一覧
- 低速回線でのアプリ動作
- ボタンの同時押し
- ネットワークエラー時の動作
- アクティビティ破棄時の動作
- 戻るボタンの動作
- 複数OS,dp解像度での確認
- RxAndroid使用時のNPE確認
テストをする前の前準備
UI周りのテストをする前にビルドするときは、リリースするアプリに近い状態が良いので、proguardが掛かっている状態で行うのがオススメです。
低速回線でのアプリ動作
開発中は、固定回線のためアプリがサクサク動きますが、実際の環境ではモバイル回線なので、
モバイル回線時の環境に近い状態で正常に動作することをテストする。
【方法】
個人的な理想では、mvnoのSIM(あまり速度のでない回線)を用意してテストするのが良さそうです。
ただ、用意できない場合は、低速回線環境をシュミレートしてテストする必要があります。
ボタンの同時押し
ボタンの同時押しができると、意図しない画面遷移をするので、不必要に同時押しができないことを確認する。
【対策】
マルチタッチを必要としないアプリであれば、
Activityのstyleに
android:splitMotionEvents="false"
を設定すれば同時押しを無効化できます。
【参考】
http://myhappiness.hatenablog.com/entry/2013/02/16/040858
ネットワークエラー時の動作
ネットワークエラー時の仕様がある場合、ネットワークエラーの動作確認を行う。
【方法】
実装次第では、更新ボタン、PullToRefresh等で更新した時に、表示が崩れたり、クラッシュしたりするので、しっかりと確認する。
アクティビティ破棄時の動作
Androidアプリでは画面がいつお亡くなりになるのかわからないので、なるべく全画面アクティビティ破棄時の動作を確認する。
【方法】
設定 ->開発向けオプション->アクティビティを保持しない
にチェックを入れます。
ホームボタンやアプリ一覧ボタン?を押して、一度アプリから離れるとアクティビティが強制的に破棄されるので、アクティビティ破棄時の動作確認ができます。
【対策】
基本的には、開発中からアクティビティが破棄されることを念頭に置いて開発すると良さそうです。
icepickなどを使うと、オブジェクトの保存が簡単にできるのでオススメです。
戻るボタンの動作
Fragmentの遷移を行っている画面で、戻るボタンを使用して前の画面に戻れることを確認する。
実装次第では、戻るボタンでアプリが終了できなくなっている場合もあるので要チェックです。
複数OS,dp解像度での確認
当たり前ですが、動作保証内のOS、端末解像度での動作確認をする。
【対策 複数OS】
動作保証内の端末を準備して、動作確認をしておく。
【対策 dp解像度】
とりあえず、今のところは下記環境でチェックしてます。
スマホ :横が320,360,410dpの端末
タブレット:横が960,1280dpの端末
を用意して一通りデザインが崩れていないか確認する。
【備考】
私は使用したことがないですが、
- Scirocco Cloud
-
Remote Testkit
を使用するとブラウザ上でいろいろな端末でテストできるみたいです。
RxAndroid使用時のNPE確認
RxAndroid使用時に適切にunsubscribeしないとメモリリークする恐れがあるそうです。
NPEでアプリがクラッシュする可能性もあると思うので、一応リストに加えました。
【対策】
http://qiita.com/rejasupotaro/items/18f3b7c62ab071c9fee5
http://qiita.com/hide92795/items/02533c8593ce51070b57
などを参考に。
とりあえずここまで!!