受け入れテストの自動化!?|高レベルに語られる自動化と崩壊シナリオ回避法

受け入れテストの自動化!?|高レベルに語られる自動化と崩壊シナリオ回避法

スマートフォン向けアプリケーションの検証作業、これほど骨が折れることはないですよね。

第三者に委託するにもコストはかさむ。。。
コストを抑えるために社内検証を実施するとしても、検証端末の数にも限りがある。。。
検証端末をリースしようにも、やはりコストは発生する。。。
いっそクラウドで検証……といっても、それはもはや実機ではない。。。

スマホアプリの検証を自動化可能?

スマホ用ブラウザやOSの違いだけでも大変なのに、端末固有の差というものもつきまとうため、コレといった解決方法がないのが現状です。

そんな中、スマホアプリ検証で自動化を実践している企業があるということを、ショーケース・ティービー内でアプリを作成しているricemanさんが共有してくれました。
<参照:Speaker Deck『受け入れテストの自動化』>

OpenCV」を用いてスクリーン上に映る情報(画像やテキスト)の整合性を判定を実施。
  ――「眼」さながらの目視検証を自動化 ――

Phyhon」を用いてスマホアプリが現在どのような状況であるのかを判断。
  ――「脳」さながらの状況分析・行動決定を自動化 ――

Appium」を用いてスマホアプリを操作する。
  ――「指」さながらのアクションや画面遷移を自動化 ――

これってかなりスゴいことですよね。

実践しているCygames社は、反復の頻度が高いものから受け入れテストの自動化が有効であると提唱しています。
ただし、自動化は人間ほどの柔軟性を持っているわけではないために、実機を使った動作検証に勝るものはないともおっしゃっております。

しかし、本記事冒頭にあるような莫大にかかるコストの件や、バッテリー等の諸問題による連続稼動が困難であるガジェット特有の課題を解決するには、部分的に自動化を推し進めていくことは意味のあることだと思います。

他にも自動テストの開発資産が完成した後に訪れる “崩壊のシナリオ”、そしてそのシナリオの進行を一日でも遅らせるための “アンチエイジング” など、自動化ならではの課題と施策についても資料に盛り込まれています。

あまりにも高い次元で語られているため、すぐにでも実践とはいかないかもしれません。
しかし今一度、自動化のメリットを再考しつつ、その資産を活かすための手法も検討するのに有効なケーススタディとなるのではないでしょうか。

コメント