Customer Stories

「ノーコードで誰でも簡単」に偽りなし200シナリオのテスト自動化に成功したアソビューに聞く

開発マネージャー 竹内 大介氏、QAエンジニア ⻘柳 正也氏
Company
アソビュー株式会社
https://www.asoview.co.jp/
Industry
レジャー予約
Publish Date
December 2, 2021

ステイホーム期間が続き、休園等を余儀なくされたレジャー施設もあるが、事前予約制や人数・時間制限を設けて感染対策を行うなど、細やかな対応のうえで運営している施設も少なくない。

旅行、おでかけ先のレジャー施設のチケット販売サイト「アソビュー!」は、そうした細かい需要に対応すべく日々システムのアップデートを繰り返している。そんななか、サービスの品質はどのように保っているのだろう。

テスト自動化に取り組んできたアソビュー株式会社、開発マネージャーの竹内大介さん、QAエンジニアの⻘柳正也さんに、Autify導入前の課題と導入後の運用について話を聞いた。

左:QAエンジニア ⻘柳 正也 氏 右:開発マネージャー 竹内 大介 氏
(写真提供: アソビュー株式会社)

コロナ禍により、求められる需要にも変化

– 御社の事業内容と、お二人のご担当について教えてください。

竹内さん: アソビュー株式会社は、主にアウトドアとインドアの体験施設のWebチケット販売のシステムを提供しています。遊園地や水族館などのレジャー施設のほか、陶芸教室や工芸体験などの旅行先のアクティビティなども扱っています。またWebチケット直販サイトを、企業向けにソリューション提供する事業もあります。私は、チケット販売システムの開発マネージャーを担当しております。

青柳さん: 私は電子チケット領域のQAを担当していて、主にプロダクトのテストや品質改善に取り組んでいます。

ー コロナ禍で、遊び方にも変化があったのでしょうか?

竹内さん: コロナ禍で出かけることがかなり減った状況がありました。敷地面積あたりの収容人数の管理がwithコロナのレジャー施設運営のキーポイントになり、、弊社はそれに対応する機能追加などを行いました。今まであまりシステム化できていなかったところも、改善に取り組む企業が増えたと思います。コロナによって求められているものが変わってくる側面はありますね。

システムが複雑化して、テストケースも膨大に

― Autify導入前、どのような課題がありましたか?

竹内さん: Webチケットシステムは、機能の追加を続けています。昨年はコロナ禍を背景に、人数制限や日時指定など条件付きのチケットを開発しました。商品のバリエーションが増えてテストも膨大になったことで、品質を保ちながら効率良くテストするという課題が浮き彫りになったんです。

ー 人数制限に加えて、キャンセルが発生したときにちゃんと枠が増えるかなどの実装も複雑そうですね。

竹内さん: はい。システムが複雑化していくことによって、不具合も発生しやすくなる。同時にテストにかかる工数の割合がどうしても増えてしまうためリリースサイクルも遅くなります。 QAの人数も限られているなか、テストが大きな負荷になっていました。

ー QA担当は、青柳さんお一人とのこと。テストが大変になってきた実感がありましたか。

青柳さん: コロナ禍の環境の変化にともなう機能追加で、テストの条件がどんどん増えていく。例えばマトリックスを組んだ時に、数千/数万みたいなケース数に膨れ上がっていく状況でした。以前はそれをすべて人の手でやっていたのですが、すぐに限界が見えてきた。1人では厳しいので、サポートチームや他のメンバーもテストすることが何度もありました。

運用で大事なのは、メンテナンスのしやすさ

ー 自動化をしていくにあたって、Autify以外にもいくつか選択肢はあったと思います。Autifyを選んだ背景にどのようなプロセスがありましたか?

青柳さん: 1〜2年ほど前、実はSeleniumができるQAエンジニアの方に来ていただいて、一部自動化を推進した時期がありました。ですが、メンテナンスのところでうまく機能しなかったため、作ったものの使われなくなったまま終わってしまった。

その後、今のような課題が出てきたなかで、同じチームのメンバーからAutifyを紹介されました。見たところ、使いやすそうだったで「トライアルをやってみよう」から始まり、使い出したらすごくいいプロダクトだと感じて、本格導入を推進していくことになりました。

ー Seleniumでメンテナンスが機能しなかったとのこと、具体的には、どの辺りがうまく行かなかったのでしょう?

青柳さん: 今のQAの体制で、自動化のためのプログラミングができるメンバーがいなくて、機能が改修・追加されていく中で、コードを修正する作業が追いつかなかった。それがメンテナンスにおける課題でした。

ー Autifyのようなノーコードのツールであれば運用しやすいと。

青柳さん: 実際にトライアルでテストシナリオやプランを作る際に、私自身、直感的に操作できて使いやすかった。メンテナンスコストの観点でも、Autifyの導入を強く要望しました。

オーナーシップを明確にする

ー Autifyに決めてからは、どのように導入を進めましたか?

青柳さん: 今回対象にしたプロダクトがWebチケットなので、まずは、チケット領域のリグレッションテストをAutifyで自動化に置き換えていこうと考えました。弊社はリリースチェックシートを用意しているので、まずはそのチェック項目に沿ってAutifyでテストシナリオを作っていきました。

リリースチェックを置き換えるところまでは良かったのですが「誰がいつまでに」という具体的なところを決めきれていないままで進めたので作業が停滞してしまった時期がありました。仕切り直しした上で、現状はAutifyを活用させていただいています。

ー シナリオを作るオーナーシップが明確になっていなかった。みなさん陥りがちだと思います。どう乗り越えたか詳しく聞きたいです。

青柳さん: 竹内と課題の認識をして仕切り直しました。まずは、テストケースを用意してプランを明確にしました。実装する担当も決めて、そのメンバーと連携して、テストケースを上から順にAutifyで作っていってもらうようにしました。

テストケースが増えていくと、何がどういうケースなのか分からなくなってきてしまうという課題も発見できたので、命名規則を設けてパッと見てすぐに分かる形にしていきました。

リリースチェックを置き換えていく中で、該当するAutifyのリンクを貼っていって、一部だけでも動かせるようにしました。グループ機能も活用しました。

ー 実装するご担当の方からの反応はいかがでしたか?

青柳さん: 当時、ベトナムにも拠点を持っており、ベトナムの開発メンバーにAutifyをレクチャーをした上で、テストケースに沿って作っていってもらいました。 使っていくなかで、課題やつまづきがないか都度確認しましたが、「使いにくい/分からない」といった反応はほとんどなく、ポジティブな反応が多かったです。

ー QAチームがある会社の場合、開発チームをどう自動化に巻き込むかが大きなポイントになると思います。仕切り直してからは、どのように巻き込んでいきましたいか?

青柳さん: Autify推進プロジェクトのタスクとして割り振ったので。特に大きな問題はなく、スムーズに導入まで至ったと思います。上長である竹内にも「自動化を推進する=品質を担保していく」という理解があったので、開発メンバーを巻き込むことにも積極的に取り組めました。旗を振って「お願いします」ではなく、チーム一丸となってできたのは上長の理解が大きいかなと、私自身は思っています。

ー 開発リーダーである竹内さんが、テスト自動化の重要性を深く認識されていた背景は何ですか?

青柳さん: 一時期、リリースするたびに何かしら不具合が出る状況に陥っていました。それで「なんとか品質を担保せねば」と思っていたのが一番大きいポイントでした。

18項目200シナリオのテスト自動化に成功

ー チェックシートの項目は、どのくらいAutifyで自動化できましたか?

Masaya: チェックシートの数としては大きく18項目ありまして、そのうち、チケット領域のリグレッションテストはすべて自動化を完了しました。

チケット購入の条件が複雑なので、18項目から分岐していく形になっていて、200シナリオくらいあります。これを手作業でやると、2〜3時間くらい掛かってしまうボリュームです。それをAutifyに置き換えていくことによって、工数がかなり削減ができました。

PC環境とスマホ環境の両方が自動でテストできるため2~3時間が浮く。手動だと人によって精度や速さに差が出ていた部分もありましたが、Autifyに移行してからは品質も安定してきています。

ー 200ものシナリオを自動で回せているのはすごいですね。

青柳さん: Slackと連携して結果が全て通知されるようになっているので、確認もラクですし、エラーがあればすぐに拾えるから助かっています。

ステップグループ機能でシナリオ作成も効率よく

ー 運用で工夫していることはありますか?

青柳さん: 基本的には、デイリーで動かすシナリオを用意して、標準的な機能に異常が起こっていないかを毎朝確認しています。あとは、リリースのタイミングでテストプランとしてまとまっているものを実行しています。

今はリリース前のリグレッションテストという位置づけでAutifyを活用しているので、CI(Continuous Integration)のテストに広げていきたいと思っています。具体的にどのようなシナリオを実装するかまだ検討できていないので、そこは次のステップになると思います。

ー 運用で工夫していることはありますか?

青柳さん: 基本的には、デイリーで動かすシナリオを用意して、標準的な機能に異常が起こっていないかを毎朝確認しています。あとは、リリースのタイミングでテストプランとしてまとまっているものを実行しています。

今はリリース前のリグレッションテストという位置づけでAutifyを活用しているので、CI(Continuous Integration)のテストに広げていきたいと思っています。具体的にどのようなシナリオを実装するかまだ検討できていないので、そこは次のステップになると思います。

ー  Autifyの機能で、他に活用しているものがあれば教えてください。

青柳さん: ステップグループ機能が本当に助かっています。チケット領域ですと、実際にasoview.comに入ってきて、対象のチケットを選択、「大人は何枚か、子どもは何枚か」、「ポイントやクーポンを使うか/使わないか」、その次に進むと「決済手段はどれにするか」という風に、組み合わせがいくつも出てくる。

パターンをステップグループにまとめて、シナリオを実装しています。この機能がなかったらどうなっていたのか、と思うくらい活用させてもらっています。

修正もグループを1つ修正すれば、それを使っているシナリオの全てに反映されるので、メンテナンスのコストもたいへん低く抑えられていると思います。

ー 組み合わせのユースケースで、グループ機能を活用いただけて何よりです。

青柳さん: あとはテスト結果として、実行時間や色で可視化してもらえるのが最後のチェック担当者としてはわかりやすい。スクリーンショットも撮ってくれるのが便利です。何かエラーがあったときに、解決に向けて動きやすいのもいいですね。

テスト自動化により、開発に集中できる環境へ

ー 18項目に膨大な時間が掛かっていたところが、Autifyで全て自動化できたところが一番大きい変化ですか?

青柳さん: 大きな変化としては、やっぱりその部分ですね。あとはリリース前のリグレッションテストが誰でもできるようになったこと。「実行」ボタンを押すだけでいいので、人に依存しなくなり、誰かが作業の手を止めることなくテストできるようになりました。

導入後してからは、チケット領域のリリースチェックを自動化できたことで、他部署のプロダクトのリリースチェックもAutifyで置き換えていきたい、という声も上がっています。Autifyを実際に触って、試してもらっている状況です。

竹内さん: 以前は開発メンバーもQAの作業を一部やらなければならない状況があったと思いますが、テストはAutifyに置き換わってきているので、最近はほとんどありません。開発者は、開発により集中できる環境になったと思います。

青柳さん: 他のメンバーにもAutifyについて話すと、関心の高さを感じます。Autifyをきっかけに、テスト自動化に対する認知や理解が進むようになりました。

導入のハードルは低く、使えば使うほどワクワクする

ー 今後の展望をお聞かせください。

青柳さん: 他のチームのリグレッションテストもAutifyに置き換えていって、人の手で確認する作業を極力なくしていきたいです。テストケースを作るところは、人の手に依存しますし、そこは絶対になくすことはできません。自動と手動のバランスをうまく取って進めていきたいと思っています。

弊社の場合、サイトに掲載してチケットを販売するまでの大きなシナリオもあります。その部分もAutifyに置き換えて、品質を定常的にモニタリングできる仕組みの1つとしてもAutifyを活用していけたらと思っています。

ー これからテスト自動化に取り組む方々へ、メッセージをいただけますか。

青柳さん: Autifyは誰でも簡単にテストが作成できる――という紹介に嘘偽りはないものでした。導入に対するハードルは非常に低いと思います。テスト行う者としては、結果も可視化してもらえたり、スクリーンショットもあったりするところで、作業がとてもラクにできます。

使えば使うほどワクワクするといいますか、楽しくなるようなプロダクトだなと私自身が思っています。自動テストの1つの手段としてAutifyを活用してもらえると良いのかなと思います。

竹内さん: 我々も最初は小さい部分から導入を始めました。18項目のうちの数ケースから始めて、Autifyが実際にリグレッションテストで活用できそうかを見てきました。小さい規模からでも始めやすいと思います。先ほど青柳が申したとおり、使い勝手がいいUIなので、始めるハードルはかなり低いと私も感じました。

ー 最後に、御社からお知らせがあればどうぞ。

竹内さん: アソビューでは全国のさまざまなレジャー施設を取り扱っていますので、週末やお出かけの際にぜひご活用いただけると嬉しいです。

そして採用について。エンジニアを絶賛募集中です。弊社は日本中にあるワクワクするような遊びをお客様に提供しています。興味のある方は、弊社ホームページをご覧いただき、ぜひご連絡いただけたらと思います。よろしくお願いします!

(聞き手: オーティファイ株式会社 CEO&Co-Founder 近澤 良)