Translate

BTemplates.com

Powered by Blogger.

2017年9月19日火曜日

2017-09-18 到達点メモ


Record Espresso Testの使い方を調べてみた。

・記録でサポートできない、もしくは余分な所があるので削除する作業が必要である。
・すべての動作が記録されるわけではない。例えば、画面を単純にタップしたイベントとかは記録されない。(*例:OverFlowボタンをタップした後に画面外をタップしてウィンドウを非表示にするという動作をやった場合、画面外のタップのコマンドは認識されないので、他のボタンをタップする処理を入れるとエラーになる)
・画像を見比べることは出来ない。また複雑な動作のテストも難しい
・DateもしくはTimePickersはあるみたいなのだが、どうもNumberPickerはないっぽい???そもそも、今使っているピッカーが外部ライブラリーなのであってもそのまま生かすのは難しそうだが……。
・通知ドロワーの動作を取得することができない。例えば、通知ドロワーをクリックするとアプリがアクティブになる動作とか。
・あくまでアプリの部品がタップされたかどうかを覚えるのであって、それ以外は覚えないようである。


参考サイト
Record Espresso Test でテストコードを自動生成してみる
DroidKaigi2017 - 変更に強いEspressoテストコードを効率良く書こう
Espresso cheat sheet(PDF)
Espresso Test Recorderを使ってUIテストを作成する
PickerActions(公式ドキュメント)

という訳で実際にRecord Espresso Testで記録した後に
実際動作を試したところ以下のようなエラーが出た
java.lang.RuntimeException: WakeLock under-locked

原因としては、stopボタンをタップした時に、WakeLockを解除しているのだが
タイマー起動中にアプリを終了させる可能性を考えて
Destroyでも解除の命令を入れている。
で、理由は解除しているのに更に解除の命令を入れた為、このエラーが出た。
対策は以下のようにすればよい

if(wakeLock.isHeld()){ wakeLock.release(); }

参考サイト
java.lang.RuntimeException: WakeLock under-locked C2DM_LIB

思わぬバグを見つけて少し得した気分である。

考えてみれば当たり前の話ではあるが、一度パッケージ名を決めて公開したら
もうそのパッケージ名は変更することができない。
アプリ開発は、独自ドメインを持ってから、そのアドレスをもとに
パッケージ名を設定すると検索の設定辺りで大変お得です。

古いデータだけど、VoiceTimerで検索するとYoutubeで引っかかるから検索の仕組みってよくわからない……。

アプリをアップデートしたので今日はここまで。
良かったらアップデートしたキッチンタイマーアプリを
ダウンロードしてください。
VoiceTimer


0 コメント:

コメントを投稿