Upgrade to Pro — share decks privately, control downloads, hide ads and more …

待つ、歩く、そして祈る -モバイルアプリの厄介なテスト奮闘記-/Wait, Walk, and...

待つ、歩く、そして祈る -モバイルアプリの厄介なテスト奮闘記-/Wait, Walk, and Pray -The Troublesome Struggle of Mobile App Testing-

登壇者名:鳥渕建樹
登壇したイベントタイトル:事例とOSTで学ぶ!モバイルアプリ特有のつらいテスト、どうしてる?【Voicy×ビットキー】
登壇したイベントのURL:https://bitkey.connpass.com/event/365317/

More Decks by 株式会社ビットキー / Bitkey Inc.

Other Decks in Technology

Transcript

  1. 3 © Bitkey Inc. Toribuchi Tatsuki 鳥渕 建樹 2023.04 2014

    2018 株式会社ヒューマンクレストに入社 ソーシャルゲームのテスターからQAキャリア スタート テスト設計〜テスト実施を経験 バルテス株式会社に入社 求人検索エンジンや転職WebサービスのQA業 務に従事 テスト計画から完了報告までの一連のテスト プロセスを遂行 ビットキーへ参画 モバイルアプリのQAチームでチームを牽引し つつ、メンバーのマネジメント活動にも注力 経歴 趣味 ・ゲーム(ファイナルファンタジーXIV) ・動物(カピバラ、マーモット) ・音楽(ピアノ、オーケストラ)
  2. 4 4 © Bitkey Inc. Outline 1. ⏰ 時間的制約との戦い ◦

    ウィジェットのテスト ◦ Push通知のテスト 2. 🔧 物理世界との戦い ◦ 位置情報のテスト ◦ Bluetooth(BLE)通信のテスト 3. 🤔 正解探しとの戦い ◦ 非機能要件のテスト
  3. 7 7 © Bitkey Inc. • iOSのウィジェットは1日の更新回数に上限がある ◦ システムがウィジェットの更新に使う「バジェット」と呼ばれる回数制限がある ◦

    この制限はユーザーの利用パターンやバッテリー状況、システム全体の負荷 に基づいてシステムが自動的に最適化する ◦ 1日あたり40~70回の更新が上限 ウィジェットとは ⏰ 時間的制約との戦い
  4. 8 8 © Bitkey Inc. • 夕方くらいになるとウィジェットが軒並み動かなくなり… ◦ ウィジェットが真っ白で何も表示されない! ◦

    これって不具合?それとも制限?原因の切り分けが困難に… ◦ テスト実行が止まる ウィジェットテストにおける厄介ポイント ⏰ 時間的制約との戦い
  5. 10 10 © Bitkey Inc. • 開発と相談したうえで、待つしかないという結論になった • 開発用に回数制限をなくすオプションがあり、それを使うこ とも検討したが、ユーザーが実際に利用するアプリとは違う

    ものになってしまうため、テストとして意味があるか疑問と いうことでこのような対応になった どうテストしたか ⏰ 時間的制約との戦い
  6. 12 12 © Bitkey Inc. • 毎日定時に自動送信される通知 ◦ 複雑な条件によって送信内容が変わる ◦

    日に一度しか確認ができない ◦ テストデータを正しく準備できていないとやり直し Push通知の厄介ポイント ⏰ 時間的制約との戦い
  7. 15 15 © Bitkey Inc. • 開発と相談し、「通知実行コマンド」(魔法の呪文)を教えても らい、任意のタイミングでテストすることのできる環境を整え てもらった •

    通知が定時で届くことはコマンドを使わずに、通知の出し分 けに関するテストはコマンドを使用して確認を行った →テストを2つに分離し、効率と品質を両立させた どうテストしたか ⏰ 時間的制約との戦い
  8. 19 スマートビルディング化が可能に。ビル内の共⽤部から専有部までのスマートアクセス化 やビル受付の無⼈‧⾮対⾯化により、ビルの管理業務負担を軽減できます。 たとえば、オフィスで働く社員に向けて どこでも顔パス、1アプリでシームレスに働く事が可能に。顔でビルエントランスからオ フィスへの⼊室までできたり、会議室の即時予約も。事前にアプリで座席を予約すると、 予約に応じて必要なドアの鍵の解錠も可能になります。 たとえば、オフィスを管理するビルオーナーに向けて 多くの「働く」場所でworkhubが使われています オフィステナント

    ワーカー ビル(オーナー) テンポラリーユース フレキシブルオフィス 働き⽅に、⾃由とパワーを 仕事に必要な環境、ワークスペース。そこにはルールや⼿続きが数多く存在します。 オフィス空間はもちろん、コワーキングスペースやシェアオフィスなど、あらゆる 「働く空間」と「⼈やしごと」を、洗練された⽅法でつなぎます。 たとえば、コワーキング事業者に向けて ⼊会受付から⽇頃の運営まで無⼈対応可能に。オンラインでの⼊会受付、プラン選択に 応じた決済まで対応し、利⽤者は即⽇顔認証で⼊室することも可能。 全て無⼈で対応できます。
  9. 21 21 © Bitkey Inc. • workhubでは、スマートフォン の位置情報と Beacon(bitlink)を用いて従 業員の位置情報をオフィスのフ

    ロアマップ上に表示することが できる フロアマップの位置情報 🔧 物理世界との戦い
  10. 22 22 © Bitkey Inc. • オフィスを歩き回る必要がある ◦ 特定のエリアに入った時の動作確認のため、オフィスの中をウロウロ歩き回 り

    ◦ エレベーターでビルのエントランスまで移動 ◦ オフィスのWi-Fiから遠ざかり通信が途切れる 位置情報の厄介ポイント 🔧 物理世界との戦い
  11. 23 23 © Bitkey Inc. • 通信が途切れないようにテスト用のSIMカード付き端末を用 意 • 端末の設定(位置情報ON/OFFなど)の確認フローをドキュ

    メント化し、うまくいかないときの原因究明までの時間を短 縮 どうテストしたか 🔧 物理世界との戦い
  12. 25 25 © Bitkey Inc. • デスクの周りがデバイスだらけ ◦ 初期設定のテストを行う際、アプリ側がデバイスを大量に検出する ◦

    検証に使うデバイスを間違えて設定を進めると動かない、勝手に人のデバイ スが動くなどの問題が発生する • あえて通信を途中で切るような異常系テスト ◦ ファームウェアが正常な状態ではなくなることがあり、復旧作業が必要 ◦ 再起動や複雑な手順の再インストールが必要 Bluetooth(BLE通信)の厄介なポイント 🔧 物理世界との戦い
  13. 30 30 © Bitkey Inc. • クラッシュしなくなったけど読み込みに時間がかかる ◦ 『どのくらいの速度なら快適と言えるのか?』という基準値の設定が非常に 難しい

    ◦ 何秒までなら許容するという基準を設ける ◦ PMや開発エンジニアを巻き込んで合意形成していく 今度はパフォーマンスに懸念が 🤔 正解探しとの戦い
  14. 31 31 © Bitkey Inc. • クラッシュしなくなったけど読み込みに時間がかかる ◦ 『どのくらいの速度なら快適と言えるのか?』という基準値の設定が非常に 難しい

    ◦ 何秒までなら許容するという基準を設ける ◦ PMや開発エンジニアを巻き込んで合意形成していく →非機能要件のテストの期待値、どうやって設定していますか? 今度はパフォーマンスに懸念が 🤔 正解探しとの戦い
  15. 33 33 © Bitkey Inc. まとめ • 今日お話しした厄介なテストには、いくつかの共通点があり ました。 ◦

    ⏰ 再現性の低さ(時間、場所、外部要因に依存) ◦ 🔧 環境構築の複雑さ(物理デバイス、SIM、ファームウェア) ◦ 🤔 期待値設定の難しさ(パフォーマンスなど)
  16. 34 34 © Bitkey Inc. まとめ • モバイルアプリのテストは、Webとは違う難しさや泥臭さが あります •

    しかし、開発チームとの連携を密にしたり、地道な工夫を重ね たりすることで、乗り越えることができると思っています • 皆さんの現場での工夫もぜひ教えてください!