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
システムリプレイスのタイミングでPlaywrightを入れた話
Search
福嶋淳一
June 18, 2025
Technology
0
36
システムリプレイスのタイミングでPlaywrightを入れた話
Playwright Lightnings #1での発表資料
https://playwrightnings.connpass.com/event/340591/
構成など参考にしていただけると🙏
福嶋淳一
June 18, 2025
Tweet
Share
More Decks by 福嶋淳一
See All by 福嶋淳一
なぜHono×GraphQLを選んだのか?
junichi_fukushima
1
2.5k
Other Decks in Technology
See All in Technology
First-Principles-of-Scrum
hiranabe
3
1.6k
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
0
350
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
160
あの夜、私たちは「人間」に戻った。 ── 災害ユートピア、贈与、そしてアジャイルの再構築 / 20260108 Hiromitsu Akiba
shift_evolve
PRO
0
510
【Agentforce Hackathon Tokyo 2025 発表資料】みらいシフト:あなた働き方を、みらいへシフト。
kuratani
0
110
スクラムマスターが スクラムチームに入って取り組む5つのこと - スクラムガイドには書いてないけど入った当初から取り組んでおきたい大切なこと -
scrummasudar
1
1.8k
I tried making a solo advent calendar!
zzzzico
0
140
Introduction to Bill One Development Engineer
sansan33
PRO
0
340
Models vs Bounded Contexts for Domain Modularizati...
ewolff
0
110
2025-12-27 Claude CodeでPRレビュー対応を効率化する@機械学習社会実装勉強会第54回
nakamasato
4
1.4k
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
420
CQRS/ESになぜアクターモデルが必要なのか
j5ik2o
0
760
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
250
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
31
The browser strikes back
jonoalderson
0
300
Game over? The fight for quality and originality in the time of robots
wayneb77
1
76
A Modern Web Designer's Workflow
chriscoyier
698
190k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
330
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
62
4 Signs Your Business is Dying
shpigford
187
22k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
38
Color Theory Basics | Prateek | Gurzu
gurzu
0
170
Transcript
株式会社Schoo / 基盤開発ユニット / バックエンドエンジニア(PL) 福嶋 淳一 システムリプレイス × Playwright導入のリアル
Playwright Lightnings #1🎉 2025年6月18日
今日のテーマ
弊社のPlaywright導入初期 の取り組みを公開
構成や取り組みが参考にな れば嬉しいです
CONTENTS 01. 自己紹介 02. 今取り組んでいるプロジェクト概要 / テスト自動 化の戦略 03. 04.
課題・今後の対応 Agenda Playwright導入の方針と構成
自己紹介
自己紹介 ・氏名 福嶋 淳一(社内では、ふくさんと呼ばれてます) ・所属 株式会社Schoo 基盤開発ユニット ・職種 バックエンドエンジニア プロジェクトでの役割は、プロジェクトリーダー
・Playwright歴 3ヶ月w(色々勉強中の毎日) ・趣味 海外旅行、グルメ、ワイン、コーヒーなどなど よろしくお願いします!
システムリプレイスに伴うテ スト自動化の戦略 Playwrightの採用理由
今弊社では、システムリプレイスに取り組んでいます システム老朽化 メンテナンスが困難であること サイト応答性の悪化 →リプレイスを行い、「次世代プラットフォームの 構築」を目指す →ページ単位の段階的リリース方式を採用 ×
テスト自動化の戦略 テストピラミッドの原則に則り結合 テストもしっかり自動化
なぜPlaywrightなのか ・開発継続性の観点 開発元(マイクロソフト)から考えた時に開発継続性が高いと考えた ・実行速度の観点 他のテストツールと比較してより実行速度が速い傾向がありそう ・情報が見つけやすい ・テストが書きやすい 例えば、自動待機機能があり、テストコードの記述に開発者が専念できる!(別のテ スト自動化ツール使った事がある身としてはこれが一番感動。。。!) ・機能が豊富!
Playwright導入方針と構成
Playwright導入にあたって悩んだこと ・どういった構成にしようか ・どこまでテストをするべきなのか ・テストデータの準備をどうしようか。 ・会員種別のテストをどのようにやろうか
Playwright導入時の大方針 ① ビジネス的に優先度の高いユーザーのテストを拡充する 法人向け会員や、個人で有料課金頂いている会員向けのテストの比重を重くする。(それ 以外の会員種別のテストを実施しないわけではない。)
Playwright導入時の大方針 ② サービスの根幹部分 / ユーザー体験を大きく損なうものテストを重点的に実施 例) ・ページごとに既存システム・新規システムが切り替わるのでそこでの認証・認可が適切 に機能するか ・授業が表示されて、対象のページに遷移できるかなど。
Playwright導入時の大方針 ③ データ作成の手順が煩雑だとしても、テストデータの作成も自動化を行う テストデータ作成の自動化を行い「社内スタッフが授業を登録し、それをお客様が閲覧す る」というように、実際の利用シーンに限りなく近い形でテストを行う。
構成
ディレクトリ構成
GitHub Actionsの設定 複数ブラウザ/複数会員種別のテ ストをすることで、負荷が高まりテ ストが落ちる🥹 GHA上で複数台実行を行う Playwrightはテストを並列実行し てくれる
課題・今後の対応
課題 ・メンテナンス工数という観点で、Playwrightに時間を割ける開発者が少ない。 → 運用工数を下げる取り組みを行う ・何をどこまでテストをするのかという点についてはまだ考える余地がありそう バックエンド層の結合テストは強化できているが、フロントエンド層の結合テストが弱い状 況。E2Eの責務を一部フロントエンド層の結合テストに移管する必要があるかも。 → テスト戦略の見直し(結合テスト /
E2Eテストの棲み分けを考えるなど)
運用工数を下げるための取り組み〜Playwright MCPの活用〜 GitHub Copilot × PlaywrightMCPの活用 POMの実装もできてて、比較的 メンテナンスの高いコードを自 動生成し、テスト実行の成功ま で完了していることを確認
運用工数を下げるための取り組み〜Playwright MCPの活用〜
運用工数を下げるための取り組み〜Playwright MCPの活用〜 テストピラミッドの原則に則り結合 テストもしっかり自動化
アクセシビリティテストを入れていきたい! まずは、WCAG基準のレベルAの問題をブロックしていく!
アクセシビリティテストを入れていきたい!
まとめ(所感) ・初期導入コストは結構かかったものの、結合テスト + Playwrightの組み合わせで早期 バグ発見に繋がったケースやもあり、思ったより早い段階で効果を実感できた。 ・複数間ブラウザテスト、複数会員種別のテストの自動化・データ作成自動化などにより 手動テスト工数削減には少なからず繋がっている。 ・自動待機機能やUIモードなどの機能が豊富で、テストコードを書くことに専念できた。 ・
ご清聴ありがとうございまし た🙏