MagicPodを導入したことで実装に回せる開発リソースが増え、より多くのコンテンツが出せるようになった。

株式会社ウェザーニューズ

モバイルアプリテスト ブラウザテスト

ユーザーインタビュー第19回は、MagicPod代表伊藤とともに株式会社ウェザーニューズ様にお話を伺いました。
具体的な活用事例や選定の決め手など、いろいろとお話しいただきました。


株式会社ウェザーニューズ

ウェザーニューズは1986年の設立以来、人々の暮らしを支え続ける気象技術やサービスの提供を手がけてきました。法人向け事業では、海・空・陸における交通を始め、流通、エネルギーなど多様な産業分野でリスクへの対応策を支援するコンテンツを提供しています。個人向け事業では、主にスマートフォンアプリ「ウェザーニュース」や24時間生放送配信を行う「ウェザーニュースLiVE」を通して、サポーター参加型の気象情報を提供しています。


POINT

  • 導入前は全員でリグレッションテストをしていた
  • モバイルアプリのテストに強い点が決め手
  • UI変更があってもボタン1つで修正できる
  • 自動テストがあるから直前まで開発できる

左から ・古賀 友章さん アプリ開発マネージャー ・森下 貴康さん iOSエンジニア ・伊藤 望 MagicPod CEO

左から
・古賀 友章さん アプリ開発マネージャー
・森下 貴康さん iOSエンジニア
・伊藤 望 MagicPod CEO


古賀さん(以下、古賀)︰弊社は世界最大級の民間気象情報会社として、法人向けのBtoBと個人向けのBtoSを行っています。個人向けは「カスタマー」でBtoCと呼ぶのが一般的ですが、私たちはお客様を「サポーター」と位置付け、BtoSと呼んでいます。例えばサポーターの皆様から身の回りの天気に関する情報を送っていただくことで、より精度の高い気象情報の提供を可能にしています。

私は2009年の入社以来、BtoSのアプリ開発に携わっていまして、Android開発をメインに担当してきました。2023年末からは開発の軸をiOSに移しつつ、iOSとAndroidの両OSチームのマネジメントも行っています。

森下さん(以下、森下)︰私は2022年に入社してから、iOSアプリの開発を行っています。特に「ウェザーニュース」アプリの開発とそのユーザー分析、自動E2Eテストを担当しています。

BtoSのシステム開発を行うエンジニアは30人ほどいまして、その中にiOSとAndroidでそれぞれ4人ずつアプリ開発のメンバーが所属しています。


MagicPodを導入した経緯


伊藤(MagicPod代表):QA機能はアプリ開発のメンバーで担われているのでしょうか?

古賀:そうです。弊社はリリースサイクルが月に1回程度なのですが、「ウェザーニュース」アプリはコンテンツ量がとても多くて、以前はエンジニア全員で2〜3日かけてリグレッションテストをしていました。

さすがにそれではエンジニアの負荷が大きすぎますし、「もっとアプリ開発に注力できる体制にしたい」と考え、まずはAndroidアプリでAppiumを導入して自動テストに取り組み始めました。

ただ、その時点で社内のテストに対する理解度が高かったわけでもなく、私も使命感から独学で始めたような状態でした。動かなくなると私がメンテナンスするような形で運用していました。それが2021年のことで、翌年、森下が入社してiOSアプリへの導入も進めてもらいました。

森下︰私はWebでSeleniumやCypressを使った経験がありましたので、その知見を生かして進めることができました。

伊藤:Android、iOSともにAppiumを導入されて、その後1年ほどでMagicPodに移行されたと思うのですが、どのような課題があったのでしょうか?

森下︰AppiumはJavaScriptで記述していたのですが、アプリ本体とは言語が異なります。そこのキャッチアップから必要になりますので、テストコードが書ける人、テストコードのメンテナンスができる人はどうしても限られていました。

Appium1.xから2.xへの移行も、ドキュメントが少ないので調査に時間がかかった印象です。単純にアプリのテストがしたいだけなのに、実行環境を整えるのに時間が取られるのはもったいないなと感じていました。

伊藤:MagicPodも裏でAppiumを使っていますので、そこの大変さはよく分かります。

古賀:BitriseやGitHub ActionsなどCI/CD環境への組み込みができていなかったこと、日/週単位の定期的なリグレッションテストができていなかったことも課題になっていました。


MagicPod導入の決め手

森下︰実はiOSアプリの自動テストを進める中でMagicPodの存在を知りまして、その時点で私から「MagicPodを導入したい」という提案もしていました。ただ、タイミングが悪くて……。

古賀:弊社の繁忙期は出水期(しゅっすいき)と言って、梅雨の集中豪雨や台風・洪水が起こりやすい6月から10月なんです。アプリのメンテナンスもその時期を避けるようにしています。

伊藤:なるほど、そういう繁忙期もあるんですね!

森下︰それで落ち着く頃合いを見て当時の上司に「こういうツールがあって、こういう効率化ができます」と再度提案し、導入が決まりました。

MagicPod以外にもいくつか検討はしたのですが、「日本語でサポートが受けやすいこと」や「テストの実行回数に依存しない料金体系」「モバイルアプリのテストに強い点」からMagicPodが良いと考えていました。

それと学生時代に読んでいた『初めての自動テスト』を翻訳されたのがMagicPodの玉川さんで、他にも2冊ほどMagicPodの方が書かれた本を持っていましたので、信頼できると思っていました。

伊藤:ありがとうございます! 実際にMagicPodを触ってみていかがでしたか?

森下︰やはりGUIで直感的に操作できる点は、学習コストが低くて良いと感じました。

古賀:昨年、新入社員がそれぞれの部署を体験してみる現場研修がアプリチームでもあったのですが、MagicPodで実際に自動テストを体験してもらったところ、ある程度動かすことができていました。

森下︰コードベースのツールだとコードのキャッチアップをする段階が必要になりますが、そこをスキップして簡単にテストケースを作っているのは見ていてすごく良いなと思いました。実際に別のチームでも、私から特にレクチャーをすることもなく実行できているようです。

伊藤:理想的なエピソードが聞けて嬉しいです(笑)。


MagicPodの活用状況

伊藤:普段はどのように利用されていますか?

森下︰日々の開発でデグレが起きていないかを確認するために利用しています。Bitriseで毎朝5時頃にビルドするようになっていて、それが30分くらいで終わってMagicPodに転送され、テスト実行される流れになっています。

一括実行が2〜3時間かかっていますので、ちょうど業務の開始前頃にSlackに通知が飛んで来ます。それを確認するところから業務が始まるという使い方をしています。今のところクリティカルな問題は起きていなくて、例えば天候によってAPIのアクセス数が変わるタイミングで表示が崩れることがあり、APIチームに問い合わせをするといった感じです。

iOSチームのほうは基本的に私がメインで触って、私が不在の場合は、別のメンバーが触ることもあります。

古賀:Androidチームも同様で、森下の同期がAndroid版のテストケースを作り、メンテナンスも担当しています。

伊藤:自動化の進捗は現状いかがですか?

森下︰手動テストのリストが450項目程度あったのですが、iOSが85%、Androidが75%ほど自動化できています。残りは他の端末と連携や通信が必要な部分になっています。もともとAppiumのコードがありましたので、1カ月くらいで50%まで完了できました。

ただ、逆にコードベースだと自分でショートカットを設定するといった自由度があったのですが、MagicPodはGUIベースなのでやり方を変えなければいけません。そこの調整に少し時間がかかりました。

伊藤:MagicPodを利用されて便利だと思う機能はありますか?

森下︰自動修復機能ですね。ちょっとしたバージョンの変更やOSの内部的なUI構造の変更で画像の部分がけっこう引っかかるのですが、キャッチアップしてくれます。

Appiumを使っていた時はセレクターを変えるレベルで修正しなければいけなかったので、自動的に「セレクターがこうだからこれに変わりました」と提案してくれて、ボタン1つで修正できるのはすごく楽です。機能としてはそれが一番ありがたいと感じています。

それと、問い合わせの対応が早いのもありがたいです。UI変更で動かない部分があった時によく問い合わせをしていましたが、数時間、早ければ1時間でサポートからメッセージを頂けていました。すごく早いと思っていましたし、別のチームからも「問い合わせの返信が早い」という声を聞いています。


最後に

古賀︰テストはないがしろにできないからこそ開発者の負担になりやすい部分です。それを簡単にして、開発者が実装にフォーカスできるようにしてくれるのがMagicPodだと感じています。

実際、「自動テストが動いているから安心して直前まで開発できる」「安心してより早くリリースできる」といった声を聞いています。MagicPodを導入したことで実装に回せる開発リソースが増え、より多くのコンテンツが出せるようになったと思います。

森下︰MagicPodはGUIベースで直感的に操作して、簡単に自動テストを動かすことができます。導入のハードルが非常に低く、実際、先ほどの新入社員研修のようにテスト未経験の非エンジニアでも簡単に使えています。自動テストの経験が有る方にも無い方にもお薦めのツールです!

株式会社ウェザーニューズ