はじめに
この記事ではGoogleゲームアプリのフィーチャーの審査においての、[戻る]ボタン(※)にフォーカスを絞ってお話しさせていただこうと思います。
Developer向けガイドライン内でも記載されており、個人的に重要な要素として考えています。
実装的にというより、テストを依頼された際に観点を持っておく、期待値としての情報を持っておく目的で、参考になれば幸いです。
※バックキー、⇦ボタンなど呼称がありますが、この記事では[戻る]ボタンと記載いたします
####読了までの時間
・約5分
####ターゲット
・これから[戻る]ボタンのテストを行うが、明確な期待値をもっていない方
[戻る]ボタンの動作について
Androidのナビゲーションバーにある[戻る]ボタンをタップした際の動作で好ましいものとしては、分かりやすく言うと下記のような動作が担保されていると指摘を受けにくいと感じます。
①適切な箇所なら一つ手前の画面に移動する
└例外としては、ストーリーなどの会話中、チュートリアル中、などの場面だと戻る動作が不適切な場合がある
②タイトル画面やTOP画面(ホーム画面など戻れる階層がない場所)ではゲームを直接終了
└直接ゲーム終了を行わず、確認のポップアップがある方が良い
③タブ移動などの画面では前に戻らない(タブを戻ったり)
└タブの表示されるお知らせ画面などでは、その画面が閉じるのが良い
実際の動作調査
1つ目に挙げた”適切な箇所”以外のところの動作について情報が少なく、期待値を出せませんでした。
解決方法として実際市場でフィーチャーされているアプリを少し調査しました。
その動作についていくつか紹介させていただきます。
チュートリアル中等の 操作不能な箇所 |
ADVパート (ストーリーなどの会話中) |
補足 | |
---|---|---|---|
アプリA | アプリ終了モーダルが表示される | 反応せず | 終了モーダルは専用にデザインされたのものが表示された |
アプリB | 特に反応せず | ナビゲーションバー非表示 | ー |
アプリC | アプリ終了モーダルが表示される | 特に反応しない | ー |
アプリD | バックキーが使えない旨の表示 | オプションメニューが開く | ー |
アプリE | アプリ終了モーダルが表示される | アプリ終了モーダルが表示される | ダウンロード中は強制終了が発生する |
上記の結果となり、アプリごとに動作はそれぞれ異なることがわかりました。
操作感が好ましかったのは以下のような動作でした。
・操作不能な箇所:アプリ終了モーダルの表示
・ゲーム中の戻ることが不適切な箇所:オプションメニューの表示
#テスト方針
ここまでに記載したような、明確に期待値が出しやすい動作については大きな方針が立てやすいのです。
しかし、実際のゲームアプリだと画面によって様々なシチュエーションがありテストケース作成もそうですが、テストする際に確認事項が多くなりテストしづらいものとなります。
以下のような方法を取ることで、そのやりづらさを無くしました。
###テストケース作成
・遷移図などでテストケースを作成し、そこでカバー仕切れない細かい遷移は実際テストしながら追加する
・無反応な箇所が多い場合などは、そのカラムを用意する
例えば、新規アプリの場合は、テストケースを用意してるうちに画面の仕様が絶え間なく変化することで、せっかく細かく作ったのにいざテストに臨むと、該当の画面がなかったり、新たな遷移が追加されてることが多いです。
###テスト実行
・下記の動作以外の場合はコメントに記載する
・「戻る」「×」「キャンセル」ボタンが表示されている場合はそれに準拠した動作
・それ以外の個所は1つ前の画面へ戻る
※強制終了など明確な不具合は報告
テスト実行者が「期待値としては良さそうだけど、この場面では適してなさそうだ。だけど期待値としてはいいんだけど...」と考える時間が多くなることが多い印象なので、ひとまず動作を記載してあとでまとめて判断する方が効率が良いと考えています。
###テスト報告
テスト後は、開発チーム側に展開して特筆した動作について想定通りなのかそうでないのかを判断してもらいます。
以下の画像はテスト報告用に各画面に対して確認した結果をまとめた例となります。
上述したとおり、[戻る]ボタンの動作で無反応となった場合にも注目するため、期待動作と無反応欄を分けています。
最後に
今回は自身が結構大変だなと感じた[戻る]ボタンについてのみお話しさせていただきましたが参考になりましたでしょうか。
フィーチャーを取るために必要なことは技術の進化と共に増えて行ったり、これまで気にされていたことが不要になっていたりとテストする身としては状況が追いにくいものだなと感じています。
新たにAndroidの機能が増えて、大規模なテストが必要なものが出てきたときには、色々試行錯誤していきたいと思います。