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
MagicPodで実現するE2Eテスト自動化
Search
Nozomi Ito
September 13, 2023
Technology
0
3.1k
MagicPodで実現するE2Eテスト自動化
TECH STREET テスト自動化の先駆者3社が集結!今後の自動化の方向性
の発表資料です。
Nozomi Ito
September 13, 2023
Tweet
Share
More Decks by Nozomi Ito
See All by Nozomi Ito
ノーコードに学ぶE2Eテスト自動化ベストプラクティス
nozomiito
0
860
ノーコードE2Eテストで実現する高速開発
nozomiito
0
620
MagicPod開発におけるテスト自動化とCI
nozomiito
0
720
最近のMagicPodまとめ
nozomiito
0
590
テスト自動化スタートアップがエバンジェリストを募集するワケ
nozomiito
0
280
MagicPodが取り組むテスト自動化最前線
nozomiito
0
450
ロケーターを学んでテスト自動化上級者を目指そう
nozomiito
1
6.9k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
4
2.3k
テスト自動化で起業した10年とテスト自動化普及の歴史を振り返る
nozomiito
8
5.6k
Other Decks in Technology
See All in Technology
本当に必要なのは「QAという技術」だった!試行錯誤から生まれた、品質とデリバリーの両取りアプローチ / Turns Out, "QA as a Discipline" Was the Key!
ar_tama
9
4.1k
Azure × MCP 入門
ry0y4n
8
1.6k
250510 StepFunctionのテスト自動化始めました vol.1
east_takumi
1
210
さくらのクラウド開発の裏側
metakoma
PRO
0
460
Google Cloud Next 2025 Recap マーケティング施策の運用及び開発を支援するAIの活用 / Use of AI to support operation and development of marketing campaign
atsushiyoshikawa
0
100
Serverlessだからこそコードと設計にはこだわろう
kenichirokimura
2
950
DjangoCon Europe 2025 Keynote - Django for Data Science
wsvincent
0
540
雑に疎通確認だけしたい...せや!CloudShell使ったろ!
alchemy1115
0
210
Previewでもここまで追える! Azure AI Foundryで始めるLLMトレース
tomodo_ysys
2
630
Cursorを全エンジニアに配布 その先に見据えるAI駆動開発の未来 / 2025-05-13-forkwell-ai-study-1-cursor-at-loglass
itohiro73
2
430
kernelvm-brain-net
raspython3
0
510
Google Cloud Next 2025 Recap 生成AIモデルとマーケティングでのコンテンツ生成 / Generative AI models and content creation in marketing
kyou3
0
100
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
Six Lessons from altMBA
skipperchong
28
3.8k
Faster Mobile Websites
deanohume
307
31k
YesSQL, Process and Tooling at Scale
rocio
172
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Build The Right Thing And Hit Your Dates
maggiecrowley
35
2.7k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
52
2.5k
Building Adaptive Systems
keathley
41
2.5k
Adopting Sorbet at Scale
ufuk
76
9.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
33k
Transcript
MagicPodで実現する E2Eテスト⾃動化 2023.9.12
About me • 伊藤 望 (Ito Nozomi) • MagicPod CEO
• ⾃動テストツール歴:約13年 • Seleniumコミュニティ主宰 • Twitter:@ito_nozomi
1. MagicPodの紹介 2. MagicPodが実現したいこと 3. MagicPod的ベストプラクティス 4. 各種機能紹介 Agenda
1. MagicPodの紹介 2. MagicPodが実現したいこと 3. MagicPod的ベストプラクティス 4. 各種機能紹介
MagicPod §Web & モバイルアプリのE2Eテスト⾃動化SasS §ノーコードで簡単にテスト作成 §柔軟性とメンテナンス性が強み (magicpod.com) 1. MagicPodの紹介
エキスパートが作ったテストツール 著者 翻訳者 コミッター 1. MagicPodの紹介
ご利⽤ユーザー様 https://magicpod.com/customer-stories/ 1. MagicPodの紹介
Demo 1. MagicPodの紹介
Webサイトテスト https://www.youtube.com/watch?v=p1lHiyj2dms 1. MagicPodの紹介 - Demo
モバイルアプリテスト https://www.youtube.com/watch?v=UQsw-q702PY 1. MagicPodの紹介 - Demo
1. MagicPodの紹介 2. MagicPodが実現したいこと 3. MagicPod的ベストプラクティス 4. 各種機能紹介
1. 開発⽣産性向上に寄与 2. MagicPodが実現したいこと • 毎⽇テスト、常にテスト • 問題の早期検出で⽣産性が向上 開発期間 😁
リリース
2. 継続的デリバリーの実現を⽀援 2. MagicPodが実現したいこと • 1⽇何回も、好きなタイミングで変更を本番環境にデプロイ • あらゆるレベルのテストを⾃動化する必要がある 本番 デプロイ
本番 デプロイ 本番 デプロイ 本番 デプロイ
Daily Test/Deployを実現した ユーザーが増えている 2. MagicPodが実現したいこと
2. MagicPodが実現したいこと
2. MagicPodが実現したいこと 家族アルバム みてねの安定リリースを⽀えるMagicPod活⽤状況
2. MagicPodが実現したいこと 『スタディサプリ 中学講座』における E2E Test の運⽤と計測による改善
2. MagicPodが実現したいこと ⾼い開発⽣産性を実現するために取り組んだMagicPodの利活⽤
1. MagicPodの紹介 2. MagicPodが実現したいこと 3. MagicPod的ベストプラクティス 4. 各種機能紹介
テストは毎⽇⾃動実⾏ 3. MagicPod的ベストプラクティス • 最新のソースコードを毎⽇ビルド‧デプロイし、テストを実⾏ • ⼿動だと、担当者‧体制が変わった際に実施されなくなりがち • リリース直前だけ実⾏だと、問題が起きた時に時間がなくて放置 しがち
• 毎⽇の変更を随時反映していく⽅がメンテナンス難易度が低い
テストはクラウドで実⾏ 3. MagicPod的ベストプラクティス • MagicPodクラウド、BrowserStack、SauceLabsのいずれか • ローカルPCだと、トラブルでテスト実⾏に時間がかかり、⼼理 的ハードルが⾼くなる - モバイル実機の接続トラブル
- MagicPodDesktopバージョンアップのトラブル - マシン環境トラブル
優先順位をつけて⾃動化する 3. MagicPod的ベストプラクティス • 早めに何らかの成果を得ることが、⾃動化定着の近道 • 優先順位をつけて⾃動化することが⼤切 まずは正常系を カバー 運⽤してみて、
課題を洗い出す 異常系は 正常系のあと
テスト間の依存関係を減らす 3. MagicPod的ベストプラクティス • 分かりにくいエラーが減る • 失敗切り分けの難易度が下がる • 実現しやすいよう、MagicPod側も改善していきたい
共有ステップを積極的に使う 3. MagicPod的ベストプラクティス • 画⾯が⼤きく変わった時のメンテナンスが楽 • ⾃動修復は(現状)あらゆるケースに有効ではない
ロケーターについて学ぶ 3. MagicPod的ベストプラクティス • ロケーター編集できると、画⾯変更により強いテストが作れる • ⽂法について学べるコンテンツ - https://speakerdeck.com/nozomiito/roketawoxue-ndetesutozi- dong-hua-shang-ji-zhe-womu-zhi-sou
- https://qiita.com/rllllho/items/cb1187cec0fb17fc650a - http://blog.bangboo.com/sub/xpath.html
テストしやすいアプリケーションにする 3. MagicPod的ベストプラクティス • 変わりにくいユニークIDをUI要素に付与する • テスト環境では⾃動テストしやすい設定にする - WebViewデバッグ有効化 -
⾃動化しにくい機能を迂回する⽅法を⽤意 • データを取得‧操作できるWeb APIを⽤意 - データのクリア - 初期データのセットアップ - 内部IDの取得
1. MagicPodの紹介 2. MagicPodが実現したいこと 3. MagicPod的ベストプラクティス 4. 各種機能紹介
クロスブラウザ‧マルチ端末 4. 各種機能紹介 • 作ったテストをさまざまなブラウザ‧端末で実⾏ • 並列実⾏もサポート
Visual Regression Test 4. 各種機能紹介 • 画⾯キャプチャが期待値と⼀致するかチェック • デザイン崩れバグなどの検出が可能
UI変更があった場合のテスト⾃動修復 4. 各種機能紹介
CI連携 4. 各種機能紹介 • Jenkins、GitHub Actions、 CircleCI、 Bitriseほか
各種メンテナンス⽀援機能 4. 各種機能紹介 UI定義共有 共有ステップ データ駆動テスト 変数 条件分岐 履歴管理
さまざまなコマンド 4. 各種機能紹介
値チェック 4. 各種機能紹介 ‒ さまざまなコマンド • 様々な条件で期待値チェック
各種ブラウザ操作 4. 各種機能紹介 ‒ さまざまなコマンド
各種モバイル端末操作 4. 各種機能紹介 ‒ さまざまなコマンド
各種モバイル端末操作 4. 各種機能紹介 ‒ さまざまなコマンド 画像アップロード フリーハンド図形描画 端末回転 スワイプ
各種モバイル端末設定 4. 各種機能紹介 ‒ さまざまなコマンド 地域 タイムゾーン 位置情報 ⾔語
各種ユーティリティコマンド 4. 各種機能紹介 ‒ さまざまなコマンド 数値⽐較 2段階認証突破 正規表現 四則演算
⽇付計算コマンド 4. 各種機能紹介 ‒ さまざまなコマンド • 「明⽇の⽇付を⼊⼒」などの⽤途に
HTTPリクエスト送信 4. 各種機能紹介 ‒ さまざまなコマンド • DBの値チェックやデータクリアなどに
無料トライアルも可能です!