AppiumでAndroidのカレンダーを操作する

AppiumでAndroidを操作する場合、安定化させるのが難しいのがカレンダー(日付入力)部分。ググっても似たような問題をよくみかけます。対策としてswipeが目立つけど、KeyEventを使ったほうが安定するかもしれません。

KeyEventとは

Android上でのキー操作を抽象化したもの。詳細はこちらのページに書かれていて、KEYCODE_DPAD_UP(19)とKEYCODE_DPAD_DOWN(20)を使えば上下にカーソルを動かせるので、日付設定で難しいカレンダーの年指定も簡単に。

# Ruby
driver.press_keycode(19)
driver.press_keycode(20)

回避策として目立つのがSwipeを使ったスクロールだけど、それは多用したら不安定になっちゃうイメージ。なぜなら、機種によってしゅいーんとスクロールしてしまったり、スクロールさせる距離を揃えるのが難しい。

なので、Key操作でなんとかするのは結構ありなんじゃないかなと。

 

 

タイトルとURLをコピーしました