Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
犯人はE2Eテスト? 並列実行で開発チームを救え!
Search
coconala_engineer
August 18, 2025
0
7
犯人はE2Eテスト? 並列実行で開発チームを救え!
coconala_engineer
August 18, 2025
Tweet
Share
More Decks by coconala_engineer
See All by coconala_engineer
サービスを止めるな! DDoS攻撃へのスマートな備えと最前線の事例
coconala_engineer
2
250
SREの次のキャリアの道しるべ 〜SREがマネジメントレイヤーに挑戦して、 気づいたこととTips〜
coconala_engineer
2
5.5k
ココナラiOSチームの生成AI利用
coconala_engineer
0
40
AIと向き合う若手エンジニアの責任
coconala_engineer
0
43
GraphQLを活用したリアーキテクチャに対応するSLI/Oの再設計
coconala_engineer
0
320
一番気が重いと言われたポストモーテム委員会の改革
coconala_engineer
0
320
SREの視点で考えるSIEM活用術 〜AWS環境でのセキュリティ強化〜
coconala_engineer
1
410
(みんなやっているはずなのに情報が少ない)DNSレコード管理の改善
coconala_engineer
0
140
クラウド時代のDDoS対策:可用性を守るためのベストプラクティス
coconala_engineer
1
120
Featured
See All Featured
Building an army of robots
kneath
306
45k
Side Projects
sachag
455
43k
YesSQL, Process and Tooling at Scale
rocio
173
14k
4 Signs Your Business is Dying
shpigford
184
22k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Bash Introduction
62gerente
614
210k
Practical Orchestrator
shlominoach
190
11k
Navigating Team Friction
lara
188
15k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Six Lessons from altMBA
skipperchong
28
4k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Transcript
Copyright coconala Inc. All Rights Reserved. 犯人はE2Eテスト? 並列実行で開発チームを救え! DATA :
2025.09.04 株式会社ココナラ QAグループ Yuto SUZUKI
Copyright coconala Inc. All Rights Reserved. 鈴木 悠仁(まるちゃん) 株式会社ココナラ QAグループ
QA開発チーム Team Manager • ココナラ入社4年目 • 自称“何でも屋” • マイブーム: ひとりサマータイム まえおき 0 2
Copyright coconala Inc. All Rights Reserved. 3 ココナラの事業内容 0
Copyright coconala Inc. All Rights Reserved. 4 Agenda 前提 問題発生🚨
そうだ、並列化しよう💡 1 2 3
Copyright coconala Inc. All Rights Reserved. • 2023年前半に本番障害流出率が ⤴ •
低減策として CUJに対するE2Eテストを整備 • 2023年9月にリリース前に E2Eテスト実行がルール化 前提 1 導入背景 5
Copyright coconala Inc. All Rights Reserved. 前提 1 通算30件以上の障害流出を阻止 🎉
6 Web Android iOS
Copyright coconala Inc. All Rights Reserved. Fin 7
Copyright coconala Inc. All Rights Reserved. 問題発生🚨 2 8 実は運用的な問題が
...
Copyright coconala Inc. All Rights Reserved. 問題発生🚨 2 9
Copyright coconala Inc. All Rights Reserved. 1. 全件実行 モバイルアプリ自体を改修したら実施 2.
最小限実行 バックエンドを修正したら実施 3. 最小限+α実行 バックエンドを修正かつ広めに修正 問題発生🚨 2 E2Eテストの実行タイプ 10
Copyright coconala Inc. All Rights Reserved. 問題発生🚨 2 E2Eテスト実行時間 11
Copyright coconala Inc. All Rights Reserved. リリース頻度 🔄 • 1日に多いと5回以上
• リリース可能時間は10~18時 ◦ 金曜日は15時まで 問題発生🚨 2 リリースの特徴 12 リリースブロック 🚫 • 月に最低6日以上リリースブロック あり ◦ 期間明けにリリースが集中 テスト環境最新化時間 ⏰ • テスト環境の最新化が必要 ◦ 最大20分
Copyright coconala Inc. All Rights Reserved. 問題発生🚨 2 13 テスト
失敗!! デプロイミ ス!! 差込リリー ス!
Copyright coconala Inc. All Rights Reserved. 問題発生🚨 2 14 速
さ
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 15
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 16
並列化前( iOS) mac2.metal maxWokers
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 17
並列化後( iOS) mac2.metal maxWokers mac2.metal maxWokers Shared
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 18
並列化前( Android) mac2.metal maxWokers
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 19
並列化後( Android) c5.metal maxWokers
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 20
並列化をするうえで考慮した観点 1. 💰 → 極力安くしたい! 2. OS別制約 → iOSはMacOS以外ではビルドできない! 3. メモリー → 高ければ高いほど並列度が上がる!
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 21
並列化前後の変化
Copyright coconala Inc. All Rights Reserved. そうだ、並列化しよう 💡 3 22
最終結果!
Copyright coconala Inc. All Rights Reserved. Fin 23