Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
セーフィーにおけるMagicpod活用の歴史と改善の取り組み
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
森重 丈
March 03, 2025
Business
1k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
セーフィーにおけるMagicpod活用の歴史と改善の取り組み
森重 丈
March 03, 2025
Other Decks in Business
See All in Business
01_全社_FLUX採用ピッチ資料_Ver.5.6
flux
12
230k
10年、同じドメインに 浸かる覚悟 / Decade-deep in one domain.
hirokiyamamoto14
PRO
0
220
OR Royalties Inc. - Corporate Presentation, September 2026
orroyalties
0
660
20260806financial-results-presentation
sios3744
0
150
freeeの福利厚生と働き方
freee
PRO
1
110k
キャンバスエッジ株式会社 会社説明資料
canvasedge
0
19k
より使われるサービスに。行政プロダクトのグロース戦略
middleokada
2
1.4k
ゲームにおけるメディアミックス展開との向き合い方 -ヘブンバーンズレッドのメディアミックス企画の立て方-
gree_tech
PRO
0
870
何から手をつける?SmartHRのセキュリティ対策の考え方
smarthr
3
1.4k
PMよ、エゴイストになれ!
suh1101
0
190
三井物産グループのデジタル証券~福岡・天神~徹底解説セミナー
c0rp_mdm
PRO
0
1k
中期経営計画2027(2026年8月14日更新)
buyselltechnologies
0
3.6k
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
730
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
430
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
500
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Being A Developer After 40
akosma
91
590k
Designing for Performance
lara
611
70k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The Limits of Empathy - UXLibs8
cassininazir
1
650
Transcript
1 © Safie Inc.| セーフィーにおけるMagicpod活⽤の 歴史と改善の取り組み 森重 丈
2 © Safie Inc.| アジェンダ • ⾃⼰紹介 • 会社紹介 •
はじめに • MagicPod導⼊経緯/現在の活⽤⽅法 • セーフィーにおけるMagicPod活⽤と改善の歴史
3 © Safie Inc.| ⾃⼰紹介 • 森重 丈 • 経歴 ・オフィス機器メーカー
/テストエンジニア ・セーフィー/QAエンジニア ・MagicPodは1年半くらい • 趣味 ◦ バイク ◦ 釣り ◦ お酒
4 © Safie Inc.| 会社紹介
None
会社概要 設⽴年⽉ 従業員数 (2025年1⽉)*1 年間売上⾼ (FY2025予想) 課⾦カメラ台数 (2024年12⽉末)*3 At a
Glance 製品‧サービスの概要 *1 各⽉初の⼈数 *2 ARR Annual Recurring Revenue。各四半期末時点のMRR(Monthly Recurring Revenue)を12倍して算出。 MRRは対象⽉末時点における継続課⾦となる契約に基づく当⽉分の料⾦の合計額(販売代理店経由の売上を含む) *3 各四半期に販売したカメラ台数ではなく、各四半期末時点で稼働‧課⾦しているカメラ台数 2014年10⽉ 480⼈ 18,400百万円 29.3万台 クラウドドリブンなカメラOS 強固なセキュリティ 誰もが使える高品質なUI・UX 拡張性の高いプラットフォーム
7 © Safie Inc.| はじめに 登壇背景 • ユーザーインタビューの内容が他のMagicPodユーザーの参考になりそうとの ことで登壇依頼を受けた ユーザーインタビューで話題になった
• 導⼊経緯/現在の活⽤⽅法 • セーフィーのMagicPod史/改善活動 について詳細をお話したいとおもいます。
8 © Safie Inc.| MagicPodの導⼊経緯/現在の活⽤状況 導⼊経緯 • 増え続けるリグレッションテストを楽にしたい • 開発後半での不具合検出を避けたい
• MagicPodを選んだ理由 ◦ 低コスト ◦ 実⾏回数制限無し ◦ 社内QAエンジニアのスキルセット 活⽤状況 • 毎⽇リグレッションテストの⼀部(7~80ケース)実⾏ • リグレッションテストに掛かる⼯数を30%削減 • QAメンバー全員で実装/メンテナンスは分担
9 © Safie Inc.| セーフィーにおけるMagicPod活⽤と改善の歴史
10 © Safie Inc.| セーフィーにおけるMagicPod活⽤と改善の歴史 導⼊ 拡⼤ 安定
11 © Safie Inc.| 活⽤状況/困り事 MagicPod活⽤状況 • テストケース:10ケース程度 • 実⾏頻度:⽉1で開発後半に実⾏
• メンテナンス:実装者 導⼊初期の困り事 • ⽉1実⾏で多くテストケースが失敗 • メンテナンス作業が⼤変で⾃動テストが増やせない 導⼊初期 拡⼤期 安定期
12 © Safie Inc.| 困り事(詳細) • ⽉1実⾏で多くテストケースが失敗 ◦ ⽉1実⾏では画⾯の変更に追従できない ◦
不安定なロケータを使っていた • メンテナンスが⼤変で⾃動テストが増やせない ◦ 可読性の悪さ ▪ ロケータ名に領域(n)が多⽤ ▪ コメントや空⾏が適切に⼊れられてない ▪ 200⾏以上のステップ ◦ 保守性の低さ ▪ テスト対象のUIが1部分の変更されると複数の⾃動テストに影響してしまう 導⼊初期 拡⼤期 安定期
13 © Safie Inc.| 改善施策の検討 • ⽉1実⾏で多くテストケースが失敗 ◦ ⽉1実⾏では画⾯の変更に追従できない → ①⽉1実⾏から毎⽇実⾏へ ◦
不安定なロケータを使っていた → ②ロケータに対する理解不⾜。勉強会の実施。 • メンテナンスが⼤変で⾃動テストが増やせない ◦ 可読性の悪さ ▪ ロケータ名に領域(n)が多⽤ → ③実装ルールの制定 ▪ コメントや空⾏が適切に⼊れられてない → ③実装ルールの制定 ▪ 200⾏以上のステップ → ③実装ルールの制定 ◦ 保守性の低さ ▪ テスト対象のUIが⼀部分変更されると複数の⾃動テストに影響してしまう → ②共有 ステップする理解不⾜。勉強会の実施。 導⼊初期 拡⼤期 安定期
14 © Safie Inc.| 改善施策②勉強会の実施 • 対象者 ◦ MagicPodでテストケースを作成したことがあるメンバー ◦
MagicPodでテストケース作成したことないけど、メンテンスだけできるメンバー ◦ MagicPod触ったことないメンバー • ⽬標 ◦ 可読性/保守性を考慮したテストケースが作成できるようになること • 内容 ◦ MagicPodの基本的な操作の理解 ◦ ロケータの理解 ◦ 変数/条件分岐/共有ステップの活⽤⽅法の理解 • 形式 / 頻度 ◦ 資料精読(基本的にはMagicPodのスタートガイド) ◦ ハンズオン(週1で1時間) 導⼊初期 拡⼤期 安定期
15 © Safie Inc.| 改善施策②勉強会の実施 こちらは実際に勉強会を実施したときのNotion。 導⼊初期 拡⼤期 安定期
16 © Safie Inc.| 改善施策②勉強会の実施 ハンズオンの流れ ①お題の説明 ②実装(1回⽬) 普段通りに実装 ③各⾃実装、気づき‧感想の共有(1回⽬)
④実装(2回⽬) 共有ステップや条件分岐、変数について 説明したうえで再度実装 ⑤各⾃実装、気付き‧感想の共有(2回⽬) 導⼊初期 拡⼤期 安定期
17 © Safie Inc.| 改善施策③実装ルールの制定 • テストケースの先頭 ◦ コメント ▪
テスト名 ▪ テストケースのURL • テストケース中 ◦ ロケータ名 ▪ 領域(0)、ボタン(n)などNG ▪ 適切なロケータ名をつけること ◦ 確認ステップのあとには空⾏ • テストケース数 ◦ 100ステップを⽬安にする ◦ 200ステップ以上は分割する 導⼊初期 拡⼤期 安定期
18 © Safie Inc.| 改善施策③実装ルールの制定 • テストケースの先頭 ◦ コメント ▪
テスト名 ▪ テストケースのURL • テストケース中 ◦ ロケータ名 ▪ 領域(0)、ボタン(n)などNG ▪ 適切なロケータ名をつけること ◦ 確認ステップのあとには空⾏ • テストケース数 ◦ 100ステップを⽬安にする ◦ 200ステップ以上は分割する 導⼊初期 拡⼤期 安定期
19 © Safie Inc.| 改善施策③実装ルールの制定 • テストケースの先頭 ◦ コメント ▪
テスト名 ▪ テストケースのURL • テストケース中 ◦ ロケータ名 ▪ 領域(0)、ボタン(n)などNG ▪ 適切なロケータ名をつけること ◦ 確認ステップのあとには空⾏ • テストケース数 ◦ 100ステップを⽬安にする ◦ 200ステップ以上は分割する 導⼊初期 拡⼤期 安定期
20 © Safie Inc.| 改善効果 • ⽉1実⾏で多くテストケースが失敗 ◦ ⽉1実⾏では画⾯の変更に追従できない → ①⽉1実⾏から毎⽇実⾏へ:◎ ◦
不安定なロケータを使っていた → ②ロケータに対する理解不⾜。勉強会の実施。:△ • メンテナンスが⼤変で⾃動テストが増やせない ◦ 可読性の悪さ ▪ ロケータ名に領域(n)が多⽤ → ③実装ルールの制定:◎ ▪ コメントや空⾏が適切に⼊れられてない → ③実装ルールの制定:◎ ▪ 200⾏以上のステップ → ③実装ルールの制定:◎ ◦ 保守性の低さ ▪ テスト対象のUIが1部分の変更されると複数の⾃動テストに影響してしまう → 共有ス テップする理解不⾜。勉強会の実施。:△ 勉強会だけではスキルが定着せず。追加施策としてペアプロを追加導⼊。 導⼊初期 拡⼤期 安定期
21 © Safie Inc.| 改善施策③ペアプロ • MagicPod ペアプロで検索して出てきた記事を参考に実施 • ペア
◦ 社員メンバー+業務委託メンバーでペア ◦ 基本的には社員がナビゲーター、業務委託メンバーがドライバー • 利⽤したツール ◦ GoogleMeet • 頻度 ◦ 1⽇1時間 • 期間 ◦ 3ヶ⽉~4ヶ⽉程度ペアプロ実施 ◦ その後は各⾃実装しつつ、わからないことがあればペアに相談する形 導⼊初期 拡⼤期 安定期
22 © Safie Inc.| 改善効果 • ⽉1実⾏で多くテストケースが失敗 ◦ ⽉1実⾏では画⾯の変更に追従できない → ①⽉1実⾏から毎⽇実⾏へ:◎ ◦
不安定なロケータを使っていた → ②ロケータに対する理解不⾜。勉強会の実施+ペアプ ロ。:◎ • メンテナンスが⼤変で⾃動テストが増やせない ◦ 可読性の悪さ ▪ ロケータ名に領域(n)が多⽤ → ③実装ルールの制定:◎ ▪ コメントや空⾏が適切に⼊れられてない → ③実装ルールの制定:◎ ▪ 200⾏以上のステップ → ③実装ルールの制定:◎ ◦ 保守性の低さ ▪ テスト対象のUIが1部分の変更されると複数の⾃動テストに影響してしまう → 共有ス テップする理解不⾜。勉強会の実施+ペアプロ:◎ 勉強会+ペアプロでメンテナンス性の⾼いテストケースが作れるように。 導⼊初期 拡⼤期 安定期
23 © Safie Inc.| セーフィーにおけるMagicPod活⽤と改善の歴史 拡⼤
24 © Safie Inc.| 活⽤状況/困り事 MagicPod活⽤状況 • テストケース:20~60ケース程度、どんどんテストケースを作成していた • 実⾏頻度:毎⽇実⾏
• メンテナンス:曜⽇で持ち回りで毎⽇⼀⼈が担当 困り事 • あるテストケースがコケると他のテストケースもコケる • ⾃動テストの実⾏時間が増えた • ⼀⼈でメンテするのやや⾟くなってきた 導⼊初期 拡⼤期 安定期
25 © Safie Inc.| 困り事(詳細) • あるテストケースがコケると他のテストケースもコケる ◦ 複数テストケースで同じテストデータを使っていた ◦
どのテストケースが悪かったのか調査に時間が掛かる • ⾃動テストの実⾏時間が増えた ◦ ⼀括実⾏時に単⼀環境で実⾏ ◦ 実⾏上限時間 • ⼀⼈でメンテするのが⾟くなってきた ◦ 可読性/保守性⾼い⾃動テストでも数あると⼀⼈では⼤変 導⼊初期 拡⼤期 安定期
26 © Safie Inc.| 改善施策の検討 • あるテストケースがコケると他のテストケースもコケる ◦ 複数テストケースで同じテストデータを使っていた → ①テストデータの分離 ◦
どのテストケースが悪かったのか調査に時間が掛かる → ①テストデータの分離 • ⾃動テストの実⾏時間が増えた ◦ ⼀括実⾏時に単⼀環境で実⾏ → ②⼀括実⾏の⾒直し ◦ 実⾏上限時間 → ②⼀括実⾏の⾒直し • ⼀⼈でメンテするのが⾟くなってきた ◦ 可読性/保守性⾼い⾃動テストでも数あると⼀⼈では⼤変 → ③メンテナンス運⽤の変更 導⼊初期 拡⼤期 安定期
27 © Safie Inc.| 改善施策①テストデータの分離 テストデータを分離するためにルールを制定 • テストケース毎にテストデータは作成する • テストデータはテストケース番号を使って⼀意なものにする
◦ ユーザーアカウント ▪ OS+テストケース番号+作成順@~ ◦ カメラ名 ▪ OS+テストケース番号+作成順 導⼊初期 拡⼤期 安定期
28 © Safie Inc.| 改善施策②⼀括実⾏の⾒直し ⼀括実⾏設定のタグで実⾏する機能で並列実⾏しを実⾏時間を削減! • テストケースのタグ⾒直し ◦ ⼤きく機能単位でテストケースにタグ付けする
• ⼀括実⾏設定の⾒直し ◦ 並列実⾏できる⽤にタグ毎の 実⾏環境を⽤意する ◦ 並列実⾏設定のチェックボックスをONへ 導⼊初期 拡⼤期 安定期
29 © Safie Inc.| 改善施策③メンテナンス運⽤の⾒直し ⼀⼈ではなく、みんなでメンテナンスする体制の準備 • 分担準備 ◦ 改善施策②の⼀括実⾏の⾒直しですでに完了
• 担当 ◦ 分担表を作成、リリース毎に担当を⼊れ替える ◦ タグ毎に実⾏しているので担当分もわかりやすい 導⼊初期 拡⼤期 安定期
30 © Safie Inc.| 改善施策の効果 • あるテストケースがコケると他のテストケースもコケる ◦ 複数テストケースで同じテストデータを使っていた → ①テストデータの分離:◎ ◦
どのテストケースが悪かったのか調査に時間が掛かる → ①テストデータの分離:◎ • ⾃動テストの実⾏時間が増えた ◦ ⼀括実⾏時に単⼀環境で実⾏ → ②⼀括実⾏の⾒直し:◎ ◦ 実⾏上限時間 → ②⼀括実⾏の⾒直し:◎ • ⼀⼈でメンテするのが⾟くなってきた ◦ 可読性/保守性⾼い⾃動テストでも数あると⼀⼈では⼤変 → ③メンテナンス運⽤の変更 :◎ 多くのテストケースを安定してメンテナンスできるチーム/運⽤ができた! 導⼊初期 拡⼤期 安定期
31 © Safie Inc.| 今後の取り組み ‧⾃動化領域の拡⼤(PCブラウザ) ‧多⾔語テストの⾃動化(モバイルアプリ) ‧E2Eの⾃動テスト最適化 セーフィーにおけるMagicPod活⽤と改善の歴史(まとめ) 時期
困りごと 改善施策 導 ⼊ ‧テストケースの品質:悪 ‧テストケース増やせない ‧実⾏回数を増やす ‧コメント/空⾏ルール ‧勉強会の実施 ‧ペアプロの実施 拡 ⼤ テストケースが増えてきて ‧テストデータの依存 ‧実⾏時間増 ‧メンテナンス負荷の集中 ‧データ利⽤のルール化 ‧並列実⾏環境の整備 ‧メンテ負荷分散体制の構築 安 定 様々な改善施策を通じて安定的 に⾃動テストを運⽤できるよう に。
© Safie Inc.|32 ご清聴ありがとうございました Thank you!
33 © Safie Inc.| Appendix . 勉強会の内容(読み物) タイトル リンク MagicPodスタートガイド
https://support.magic-pod.com/hc/ja/sections/4408515646361-%E3%82%B9%E3%82%BF %E3%83%BC%E3%83%88%E3%82%AC%E3%82%A4%E3%83%89 導⼊初期に役⽴つTips(モバイルアプリ) https://support.magic-pod.com/hc/ja/articles/20621015915929-%E5%B0%8E%E5%85%A5 %E5%88%9D%E6%9C%9F%E3%81%AB%E5%BD%B9%E7%AB%8B%E3%81%A4Tips-%E3 %83%A2%E3%83%90%E3%82%A4%E3%83%AB%E3%82%A2%E3%83%97%E3%83%AA ページオブジェクトモデルの理解 https://qiita.com/RyomaMaeda/items/517cd5008da40b3fbcee https://tech-blog.rakus.co.jp/entry/20230523/e2etest MagicPod機能ガイド(条件分岐の活⽤) https://support.magic-pod.com/hc/ja/articles/4408909934617-%E6%9D%A1%E4%BB%B6 %E5%88%86%E5%B2%90%E3%81%AE%E6%B4%BB%E7%94%A8 MagicPod機能ガイド(変数の活⽤) https://support.magic-pod.com/hc/ja/articles/4408887437337-%E5%A4%89%E6%95%B0% E3%81%AE%E6%B4%BB%E7%94%A8 MagicPod機能ガイド(共有ステップの活⽤) https://support.magic-pod.com/hc/ja/articles/4408910141977-%E5%85%B1%E6%9C%89% E3%82%B9%E3%83%86%E3%83%83%E3%83%97%E3%81%AE%E6%B4%BB%E7%94%A8
34 © Safie Inc.| Appendix . 勉強会の内容(ハンズオン) ごめんなさい、これはテックブログで今度書きます。 https://engineers.safie.link/