Chrome OS での Android アプリのテストケース

次の表に、独自のテスト計画に使用できるテストケース一式を示します。ここには、Chrome OS デバイスでの実行を想定した Android アプリで考慮すべき一般的なシナリオが幅広く網羅されています。

テストタイプ

テストケース

アプリのシナリオ

成功のケース

Play ストアでのアプリの検索

すべて

Chromebook からアクセスすると、Play ストアにアプリが存在する(意図したとおりの動作であれば問題なし)。

アプリのインストール

すべて

アプリを Chromebook に問題なくインストールできる。

クラムシェル: アプリの起動

すべて

クラッシュ、ハング、ANR(アプリの応答なし)が発生することなく、アプリを起動できる。アプリのコンテンツが上下正しく表示される。

ウィンドウ管理

クラムシェル: ウィンドウ サイズの変更

すべて

ウィンドウ サイズ変更ボタンがある場合、ウィンドウのサイズを変更する。その結果、アプリのクラッシュ、ハング、ANR が発生することなく、コンテンツがスケーリングされる。これを、アプリのさまざまなページで試す。アクティブなカーソルの場所はそのままで、ページ コンテンツは変更されない(より大きな画面のレイアウトに合わせて調整される場合を除く)。

ウィンドウ管理

クラムシェル: フリーフォームでのサイズ変更

すべて

ウィンドウの隅をドラッグしてウィンドウ サイズを変更する。その結果、アプリのクラッシュ、ハング、ANR が発生することなく、コンテンツがスケーリングされる。これを、アプリのさまざまなページで試す。アクティブなカーソルの場所はそのままで、ページ コンテンツは変更されない(より大きな画面のレイアウトに合わせて調整される場合を除く)。

ウィンドウ管理

クラムシェル: アプリの再起動

すべて

ウィンドウ サイズ変更ボタンがある場合、ウィンドウのサイズを変更し、アプリを閉じてから再起動する。その結果、アプリが想定どおりのウィンドウ サイズと向き(前回起動時の最後のアクティビティ)で起動される。

ウィンドウ管理

クラムシェル: 最小化と復元

すべて

アプリを最小化して復元する。その結果、アプリのクラッシュ、ハング、ANR が発生せず、最小化前と変わらないコンテンツが再表示される。

ウィンドウ管理

クラムシェル: 全画面アプリ

すべて

Chrome OS キーボードの全画面表示キーを押すと、アプリが全画面表示(トップバーなし)になる。アプリのクラッシュ、ハング、ANR が発生することなく、コンテンツがスケーリングされる。

マウスとトラックパッド

クラムシェル: トラックパッドでのクリック

すべて

トラックパッドでタップ操作用コントロールをクリックする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: トラックパッドでの右クリック

すべて

トラックパッドでタップ操作用コントロールを右クリック(2 本の指でタップ)する。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: トラックパッドでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、トラックパッドでの 2 本指によるスクロール操作を行う。その結果、アプリのコンテンツがスクロールされる。

マウスとトラックパッド

クラムシェル: トラックパッドでのズーム

すべて

アプリのズーム可能な領域(画像や地図など)で、トラックパッドを使用してズーム操作を行う。その結果、アプリのコンテンツがズームされる。

マウスとトラックパッド

クラムシェル: マウスでのクリック

すべて

マウスデバイスでタップ操作用コントロールをクリックする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: マウスでの右クリック

すべて

マウスデバイスでタップ操作用コントロールを右クリックする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: マウスでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、スクロール ホイールを使用する。その結果、アプリのコンテンツがスクロールされる。

マウスとトラックパッド

クラムシェル: マウスでのスクロール操作によるズーム

すべて

アプリのズーム可能な領域(画像や地図など)で、スクロール ホイールを使用する。その結果、アプリのコンテンツがズームされる。

マウスとトラックパッド

クラムシェル: タッチスクリーンでのクリック

すべて

指でタップ操作用コントロールを押す。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: タッチスクリーンでの右クリック

すべて

指でタップ操作用コントロールを長押しする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

マウスとトラックパッド

クラムシェル: タッチスクリーンでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、1 本または 2 本の指でのスクロール操作を行う。その結果、アプリのコンテンツがスクロールされる。

マウスとトラックパッド

クラムシェル: タッチスクリーンでのズーム

すべて

アプリのズーム可能な領域(画像や地図など)で、タッチスクリーンでの指によるズーム操作を行う。その結果、アプリのコンテンツがズームされる。

タッチペン

クラムシェル: タッチペンでのクリック

すべて

タッチペンでタップ操作用コントロールをクリックする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

タッチペン

クラムシェル: タッチペンでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、タッチペンでのスワイプ操作かスクロール操作を行う。その結果、アプリのコンテンツがスクロールされる。

入力

クラムシェル: 物理キーボード

すべて

クラムシェル モードで、テキスト入力ボックスをクリックし、キーボードでテキストを入力する。その際、画面キーボードは表示されない。結果として、入力したテキストが入力ボックスに遅れなく表示される。

アプリ内コンテンツの購入

IAP 対応

ログインしてアプリ内コンテンツの購入する。その結果、コンテンツがアプリ内に適切に表示される。また、Play の購入履歴に表示される。

停止と再開

すべて

アプリの実行中に Chromebook を閉じ、5~10 秒後に再び開く。その結果、閉じたときと同じ状態からアプリが再開される。

Wi-Fi 接続

すべて

Wi-Fi をオフにする。その結果、インターネット接続の欠如についてアプリからエラーが表示される。次に、Wi-Fi を再びオンにする。その結果、アプリがインターネットに再接続され、機能していることが確認される。

ウィンドウ管理

クラムシェルとタッチビューの切り替え

すべて

アプリをクラムシェル モードで起動し、その後デバイスをタッチビュー モードに変更する。その結果、ウィンドウのサイズと向きが想定どおりに更新される。

タッチビュー: アプリの起動

すべて

クラッシュ、ハング、ANR(アプリの応答なし)が発生することなく、アプリを起動できる。アプリのコンテンツが上下正しく表示される。これを、横向きと縦向きの両方で試す。

ウィンドウ管理

タッチビュー: ウィンドウ サイズの変更

すべて

ウィンドウ サイズ変更ボタンがある場合、ウィンドウのサイズを変更する。その結果、アプリのクラッシュ、ハング、ANR が発生することなく、コンテンツがスケーリングされる。これを、アプリのさまざまなページで試す。アクティブなカーソルの場所はそのままで、ページ コンテンツは変更されない(より大きな画面のレイアウトに合わせて調整される場合を除く)。これを、横向きと縦向きの両方で試す。

ウィンドウ管理

タッチビュー: アプリの再起動

すべて

ウィンドウ サイズ変更ボタンがある場合、ウィンドウのサイズを変更し、アプリを閉じてから再起動する。その結果、アプリが想定どおりのウィンドウ サイズと向き(前回起動時の最後のアクティビティ)で起動される。これを、横向きと縦向きの両方のモードで試す。

ウィンドウ管理

タッチビュー: 最小化と復元

すべて

アプリを最小化して復元する。その結果、アプリのクラッシュ、ハング、ANR が発生せず、最小化前と変わらないコンテンツが再表示される。

ウィンドウ管理

タッチビュー: デバイスの回転

すべて

タブレット モードでデバイスを 90 度回転させる。その結果、アプリは回転しないか、または回転してウィンドウとコンテンツが適切にサイズ変更される。アクティブなカーソルやページはそのままの状態を保つ。

入力

タッチビュー: タッチスクリーンでのクリック

すべて

指でタップ操作用コントロールを押す。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

入力

タッチビュー: タッチスクリーンでの右クリック

すべて

指でタップ操作用コントロールを長押しする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

入力

タッチビュー: タッチスクリーンでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、1 本または 2 本の指でのスクロール操作を行う。その結果、アプリのコンテンツがスクロールされる。

入力

タッチビュー: タッチスクリーンでのズーム

すべて

アプリのズーム可能な領域(画像や地図など)で、指を使ってコンテンツをズームする。その結果、アプリのコンテンツがズームされる。

入力

タッチビュー: タッチペンでのクリック

すべて

タッチペンでタップ操作用コントロールをクリックする。その結果、ちょうどその場所でタップ操作した場合に想定される応答が、遅れなくアプリから返される。

入力

タッチビュー: タッチペンでのスクロール

すべて

アプリのスクロール可能な領域(リストなど)で、タッチペンでのスワイプ操作かスクロール操作を行う。その結果、アプリのコンテンツがスクロールされる。

入力

タッチビュー: 仮想キーボード

すべて

タブレット モードで、キーボードからテキスト入力を行うアプリ内領域をタップする。その結果、画面キーボードとテキストが想定どおりに表示される。これを、縦向きと横向きの画面で試す(向きの切り替えも試す)。

カメラ

タッチビュー: 写真の撮影

通信

アプリでカメラを起動でき、プレビュー画像が適切なサイズと向きで表示される。また、撮影した画像が適切なサイズと向きで表示される。これを、縦向きと横向きの両方のモードで試す。

タッチビュー: 動画の撮影

通信

アプリでカメラを起動でき、プレビュー画像が適切なサイズと向きで表示される。録画を開始すると、プレビューが適切なサイズと向きに調整される。スムーズかつ想定どおりに再生できる(音声や映像の遅れがなく、撮影時と同じスピードで再生される)。これを、縦向きと横向きの両方のモードで試す。

ウィンドウ管理

タッチビュー: カメラ使用時の画面の向きの変更

通信

アプリでカメラを起動する。デバイスを 90 度回転させる。その結果、アプリのクラッシュ、ハング、ANR(アプリの応答なし)が発生しない。また、アプリは回転しないか、回転してウィンドウとコンテンツが適切にサイズ変更される。

コンテンツの作成

コンテンツの作成

出力(描画、テキスト、音声)がアプリに想定どおりに(遅れなく)記録される。

コンテンツの保存

コンテンツの作成

アプリでコンテンツを(ローカル、クラウドのいずれかに)保存でき、再び開いたときには忠実に再現される。

コンテンツの共有

アプリで第三者とコンテンツを共有する。その結果、第三者がコンテンツを受信して開くことができる。

1 対 1 の通信

通信

考えられるすべての種類(メール、テキスト メッセージ、電話、ビデオ通話など)のメッセージを 1 種類ずつ他のユーザーに送信する。送信できたことを検証する。

1 対多の通信

通信

考えられるすべての種類のグループへの投稿(ニュースフィードの投稿、フォーラムの投稿、チャット グループなど)を 1 種類ずつ試す。送信できたことを検証する。

カメラ

クラムシェル: 写真の撮影

通信

アプリでカメラを起動でき、プレビュー画像が適切なサイズと向きで表示される。また、撮影した画像が適切なサイズと向きで表示される。

カメラ

クラムシェル: 動画の撮影

通信

アプリでカメラを起動でき、プレビュー画像が適切なサイズと向きで表示される。録画を開始すると、プレビューが適切なサイズと向きに調整される。スムーズかつ想定どおりに再生できる(音声や映像の遅れがなく、撮影時と同じスピードで再生される)。

カメラ

クラムシェル: アプリ再開後のカメラ再試行

通信

アプリでカメラを起動する。デバイスを閉じて、再び開く。その状態で、引き続き写真を撮影できるか、またはアプリを再起動することなくなんらかの操作で写真を撮影できるようになる。

入力

タップして描画

図形描画 / 手書き

指を使って図形描画のストロークをアプリに入力する。その結果、キャンバスにストロークが想定どおりに遅れなく表示される。

タッチペン

タッチペンでの図形描画

図形描画 / 手書き

タッチペンを使って図形描画のストロークをアプリに入力する。その結果、キャンバスにストロークが想定どおりに遅れなく表示される。

動画再生

通信 / ソーシャル&メディア

アプリ内で動画を再生する。結果として、スムーズに遅れなく再生できる。音もクリアである。

音量

通信 / ソーシャル&メディア

アプリに音量コントロールがある場合、メディア(音声付き)を再生しながら音量を調整してみる。その結果、音量を想定どおりに調整できる。

傾斜モーション

ゲーム

モーションを感知するゲームのプレイ中にデバイスを傾斜させる。その結果、アプリが想定どおりに反応する。

場所の特定

天気 / 地図 / ナビ

アプリでユーザーの大まかな位置を特定できる(GPS ハードウェアがなくても)。

上記以外のアプリ固有の機能

すべて

上記のテストケースのいずれにも適合しない場合にのみ使用する。

UI

大画面レイアウト

すべて

アプリの UI で画面の他の領域を使用する必要がある場合、コンテンツをデバイスの画面の幅全体に表示できるか、またはコンテンツを適切なサイズにできる。

マウスとトラックパッド

クラムシェル: トラックパッドでのドラッグ&ドロップ

すべて

トラックパッドを使用して、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

マウスとトラックパッド

クラムシェル: マウスでのドラッグ&ドロップ

すべて

マウスを使用して、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

入力

クラムシェル: タッチスクリーンでのドラッグ&ドロップ

すべて

指を使って、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

タッチペン

クラムシェル: タッチペンでのドラッグ&ドロップ

すべて

タッチペンを使用して、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: 矢印キー

すべて

Chrome OS キーボードの矢印キーがアプリ内で想定どおり動作する。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: Tab キー

すべて

Chrome OS キーボードの Tab キーがアプリ内で想定どおり動作する。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: 切り取りとコピー

すべて

テキスト入力ボックス(メッセージ入力、ハイスコア名など)で既存のテキストを選択する。Ctrl+X キーで切り取り、Ctrl+V で別のアプリへの貼り付けが行える。切り取りの代わりにコピーでもテストする。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: Esc キー

すべて

ESC キーで、アクティブなウィンドウを閉じるか、前のページに戻ることができる。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: Enter キー

すべて

Enter キーを押すことで、選択したボタンがトリガーされる。また、複数のフィールドがあるフォームの入力フィールドを編集中に Enter キーを押すことで、フォームが送信される。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: Enter キーでの送信

すべて

テキスト入力ボックス(メッセージ入力、ハイスコア名など)になんらかのテキストを入力し、Enter キーを押す。その結果、テキストがアプリに送信される。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: アプリのホットキー

すべて

アプリでよく使用するキーボード ショートカットを押してみる。その結果、アプリが想定どおりに反応する。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: 戻る

すべて

Chrome OS キーボードの戻るキーが Android の戻るボタンとまったく同様に機能する。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: 更新

すべて

アプリ内の頻繁に更新されるコンテンツの領域に移動する。Chrome OS キーボードの更新キーを押すことで、ビューが更新される。

キーボード ショートカットとナビゲーション

クラムシェル: 特殊キー: ウィンドウの固定

すべて

Alt+[ キーまたは Alt+] キーを押すと、アプリが画面の片側に固定される。その際、アプリは Chrome ブラウザの動作と同様に固定される。

デスクトップ機能

オフライン モード

すべて

設定メニューで Wi-Fi をオフにする。オフラインで使用できるアプリの機能を使用してみる。その結果、オフラインの機能が動作する。

入力

タッチビュー: タッチスクリーンでのドラッグ&ドロップ

すべて

指を使って、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

タッチペン

タッチビュー: タッチペンでのドラッグ&ドロップ

すべて

タッチペンを使用して、コンテンツの一部(画像など)をアプリ内のドロップ可能な領域にドロップする。その結果、ドロップしたオブジェクトに対してアクション(アップロードなど)が行われる。

タッチペン

タッチペンの筆圧

図形描画 / 手書き

タッチペンを使用して、さまざまな筆圧で図形描画のストロークを入力したり、消去したりする。その結果、太さに想定どおりの変化がついたストロークがキャンバスに表示される。

タッチペン

タッチペンでの消去

図形描画 / 手書き

消去オプションを選択し、タッチペンを使用して図形描画の一部を消去する。その結果、想定どおりに描画が消去される。これは、図形描画アプリでは重要である一方、メモアプリでは基本的に除外できる。

タッチペン

タッチペンのみ(指は拒否)

図形描画 / 手書き

「タッチペン モード」のみにするオプションを選択する。タッチペンを使用した図形描画と、指を使った図形描画を行ってみる。その結果、キャンバスへの描画はタッチペンを使用したときにのみなされ、指を使ったときにはなされない。

タッチペン

タッチペン使用時のタップのキャンセル

図形描画 / 手書き

タッチペンを使用して図形描画しながら、タッチスクリーンに手のひらを置く。結果として、キャンバスに手を置くことでなされた描画は表示されない(パーム リジェクション)。

デスクトップ機能

マルチタスク機能

バックグラウンド アプリ

アプリを起動して機能を起動した後、他のアプリを起動する。その結果、アプリの機能(バックグラウンド音声、ストップウォッチなど)はバックグラウンドで継続される。