打ち上げ花火を下から見るか横から見るかは、議論の分かれるところだと思いますが、ちなみに、私は花火を上から見下ろしで見たことがあります。
冒頭から話がそれましたが、ミクシィのQAチームはE2Eテストの自動化に取り組んでおります。そう、「取り組んでいる」という言葉がぴったりで、まだまだ試行錯誤しながらやってる段階です。目に見える成果が出るのは、もう少し後になるかな、という感触です。
さて、現在、自動化を2つの方法で取り組んでいます。
ひとつはseleniumやAirTestといったオープンソース(OSS)を利用したもの。
もう一つは、mabl、magicpod、autifyなどのテスト自動化支援のSaaSを利用したものです。
この記事では、OSSとSaaS、それぞれの特徴を書いてみたいと思います。
OSSをつかった自動化
■メリット
・すぐに始められる
・スキル次第でやりたいことはなんでもできる。
・無料(といっても、ツール費用が無料というだけで、環境構築に時間やスキルが必要。そこにコストが掛かっているのは無視してはならない)
■デメリット
・プログラミングスキルが必要となり、非エンジニアにはハードルが高い。
・また、上記と連動しますが、限られた人しかできなくなるので、属人化しがち。担当者が去ると自動化も終わってしまいがちです。
SaaSをつかった自動化
■メリット
・環境構築のコストが安い。Webページのテストであればテスト対象のURLさえあれば良い。
・ノーコード・ローコードで自動化のスクリプトを書くことができるため、スクリプト作成のハードルが低い。30分レクチャーすれば、だいたい誰でもスクリプトを書けるようになる
・自動化に携わる人を増やせる。メンテナンスコストや属人性を下げることができる
■デメリット
・ツールの利用料が発生する。自動化の規模が大きくなるほど、利用料も増えていく。
・OSSと比較すると、出来ることが限られる。テストのカバレッジがツールの機能次第になる。
・現状、各種SaaSはゲームアプリとの相性は良くない印象。
まとめ
私が所属しているQチームでは「全員が自動化のスクリプトを書けるようになる」を第一目標にしているため、SaaSを利用し自動化を進めております。一方で、自動化専門のチームを作って、OSSでゴリゴリやってるQAチームもあります。
みんな違ってみんな良い。