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
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
Search
LegalOn Technologies, Inc
PRO
December 05, 2025
Technology
560
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
生成AI時代の自動E2Eテスト運用とPlaywright実践知_引持力哉
LegalOn Technologies, Inc
PRO
December 05, 2025
More Decks by LegalOn Technologies, Inc
See All by LegalOn Technologies, Inc
AI Coding Agent と歩むプロダクト開発 〜現場とデザイナーの変化〜
legalontechnologies
PRO
0
210
アクセシビリティ1年生、専任になるまでとこれから
legalontechnologies
PRO
1
140
AI導入だけでは価値提供が速くならない ― Findy Team+活用でわかった、アウトカムにつながる土台とプロセス再構築のポイント
legalontechnologies
PRO
0
260
QAプロセスAI支援ツールキットの導入とその効果について
legalontechnologies
PRO
0
1k
全社で推進するAI活用 ― ダブルCoE体制とLegalRikaiが支えるリーガルテックの進化
legalontechnologies
PRO
0
3.3k
OpenProvenceを自社の評価データで検証してみた
legalontechnologies
PRO
0
520
LegalドメインにおけるRAG精度改善フロー
legalontechnologies
PRO
1
520
LegalOn Assistantの契約書検索
legalontechnologies
PRO
0
510
速習 AIエージェント入門
legalontechnologies
PRO
27
39k
Other Decks in Technology
See All in Technology
チームで進めるAI駆動アジャイル×ウォーターフォール
kumaiu
0
150
連合学習と機密コンピューティング
lycorptech_jp
PRO
0
100
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
220
自律型AIエージェントは何を破壊するのか
kojira
0
150
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
140
200個のGitHubリポジトリを横断調査したかった
icck
0
110
Oracle AI Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
6
1.9k
Kubernetesにおける学習基盤とLLMOpsの概要
ry
1
250
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
FDE という解 ― 暗黙知と明示知をつなぐ、伴走型エンジニアリング ―
otanet
0
130
就職⽀援サービスにおけるキャリアアドバイザーのシフトスケジューリング
recruitengineers
PRO
1
140
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
800
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
250
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
We Have a Design System, Now What?
morganepeng
55
8.2k
Side Projects
sachag
455
43k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
The Curious Case for Waylosing
cassininazir
1
380
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Balancing Empowerment & Direction
lara
6
1.2k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
200
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Transcript
株式会社LegalOn Technologies 生成AI時代の自動 E2Eテスト運用と Playwright実践知 Rikiya Hikimochi
2 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. - 引持 力哉(ひきもち りきや) - QA Automation - テックブログ ◦ 「QAプロセスAI支援ツールキット」 ◦ データ移行のテストに私たちはどう向き合ったか ◦ mablからPlaywrightに移行しました - ソフトウェアテスト自動化カンファレンス ◦ 2019、2020、2022 自己紹介 @rmochioo
4 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 前半 • 生成AI時代の自動E2Eテスト運用について 後半 • 約3年の運用で培ったPlaywrightの実践知(Tips)の紹介 Contents
生成AI時代の自動 E2Eテスト運用について
6 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. ほとんどのプロセスについて人が行っていた。 - テスト設計 - テスト実装 - テスト実行(CI/CDパイプラインに乗っている場合は自動) - テストメンテナンス 今まで(生成 AI台頭前)
7 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 人が行うことはプロンプトの作成 と、精査、レビュー がメインに変わった。 現在 プロセス 内容 テスト設計 プロンプトを元に 生成AIが仕様書を読みこんでシナリオを出力、 人間は精査 テスト実装 プロンプトを元に テストコードをAIが生成、人間はレビュー テスト実行 CI/CDパイプラインまたは、ローカルでの実行 テストメンテナンス プロンプトを元に 生成AIが修正箇所を特定し、自動で修復、 人間はレビュー
8 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 以下のコストを如何に減らせるかが重要と考えた。 • プロンプトの作成 • 精査、レビュー さらなる効率化を図る
9 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • プロンプトの作成:プロンプトを考える労力と入力の手間を減らす • 精査、レビュー:AI から高品質な出力を得る どう減らす?
プロンプトを考える労力と入力の手間を減らす
11 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • カスタムスラッシュコマンドの活用(Claude Code / Cursor) • Agentとのやりとりを対話形式にする • 環境変数(PLAYWRIGHT_HTML_OPEN=never)の利用 プロンプトを考える負担と入力の手間を減らす
13 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 「/◯◯」と実行すると、AI Agent に特定の指示を送れる “AI 操作用ショートカット” 。これを自作できる。 例えば、/maintenanceなどを実行すると、対応する Markdown ファイルが読み 込まれ、その内容が AI Agent によって実行される。 カスタムスラッシュコマンドの活用( Claude Code / Cursor)
14 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. markdown ファイルにはAI Agentに行ってもらいたい内容を記載しておく。 これにより、ユーザーはコマンドを叩くだけ で必要な作業 を実現できる。 カスタムスラッシュコマンドの活用( Claude Code / Cursor) maintenance.md
16 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. ユーザーが入力する選択肢をなくすことで、思考のコストを減らす。 Agentとのやりとりを対話形式にする Staging! someTest.ts 聞かれたことを答えるだけ!
18 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-reporters#html-reporter PLAYWRIGHT_HTML_OPEN=never これにより、テスト失敗時に Ctrl+C で中断する手間を省き、HTML レポートが自 動で開くことも防げる。 結果として、ユーザーの作業負担を軽減できる。 環境変数( PLAYWRIGHT_HTML_OPEN=never)の利用
19 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • カスタムスラッシュコマンドの活用(Claude Code / Cursor) • 対話形式 • 環境変数(PLAYWRIGHT_HTML_OPEN=never)の利用 プロンプトを考える負担と入力の手間を減らす
20 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. Before After
AI から高品質な出力を得る
22 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. “新規実装”と”テストメンテナンス ”に分けて考えた。 AI から高品質な出力を得る
23 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • テストシナリオの詳細化 • 実装ガイドラインの利用 AI から高品質な出力を得る(新規実装)
26 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 曖昧な表現を避け、誰が実装しても同じ結果になる ようなシナリオ設計をする。 テストシナリオの詳細化 # シナリオ 詳細化したシナリオ 1 検索ページに遷移する。 /searchに遷移する。 2 「テスト」で検索する。 検索ボックスに「テスト」を入力し、「検索」ボタンをクリックする。 3 検索結果にテストが表示されることを確 認する。 検索結果のタイトルに「テスト」が表示されることを確認する。 4 1件のみヒットしていることを確認する。 ページネーションが「 1/1-1」と表示されていることを確認する。 検索機能のテストの例
28 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. Linter では検知しづらい 実装におけるルールを記載してAIに与える。 • テストコードではPage Object に実装された Locator を利用する。 • テストデータに依存するロケータは Page Object に実装しない。 • 後処理を前準備として利用する。 • etc 実装ガイドラインの利用
29 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • テストシナリオの詳細化 • 実装ガイドラインの利用 → これらを行うことでレビューの負担が減るコードを出力してくれる。 AI から高品質な出力を得る(新規実装)
30 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. AIにとってわかりやすいテストコードを意識する。 • test.step() の活用と手順の詳細化 • Page Object と実際のページとの対応付け • コンテキストとの距離を近づける AI から高品質な出力を得る(テストメンテナンス)
32 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. test.step()とは Playwrightにおけるテストを論理的なステップに分割するための機能。 - テストレポートの可読性向上 - テストの構造化 - 🆕 AIに与えるコンテキストとして利用 https://playwright.dev/docs/api/class-test#test-step test.step()の活用と手順の詳細化
33 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. stepを「テストシナリオの詳細化」で紹介したように詳しく記載することで、AIにとっ てもメンテナンスしやすいテストコードになる。 test.step()の活用と手順の詳細化 # step 詳細化した step 1 検索ページに遷移する。 /searchに遷移する。 2 「テスト」で検索する。 検索ボックスに「テスト」を入力し、「検索」ボタンをクリックする。 3 検索結果にテストが表示されることを確 認する。 検索結果のタイトルに「テスト」が表示されることを確認する。 4 1件のみヒットしていることを確認する。 ページネーションが「 1/1-1」と表示されていることを確認する。
35 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. ファイルの説明に対応するページのパスを明記する。 これにより、AI Agent に参照させることができる。 PageObjectと実際のページとの対応付け
37 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. テストメンテナンス時に、テスト失敗時に生成される error-context.md を利用す る。 失敗時のページのsnapshotが保存されており、実際のテストコードと比較して修 正ができる。 テスト実行の一連の流れでメンテナンスまで行えるので速い。 複雑な場合はPlaywright MCPや Healer を利用する。 error-context.md の利用
38 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 現時点では、最初のページのスナップショットしか出力されない。 別タブへの遷移等が含まれるテストの場合は、全てのページのスナップショットを 出力させるカスタマイズを行う必要がある。 error-context.md の利用(注意)
39 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 新規実装 • テストシナリオの詳細化 • 実装ガイドラインの利用 テストメンテナンス • test.step() の活用と手順の詳細化 • Page Object と実際のページとの対応付け • error-context.md の利用 AI から高品質な出力を得る
40 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. プロンプトを考える労力と入力の手間を減らし 、AI から高品質な出力を得る 工夫 を行うことで、生成AI時代においてさらなる効率化を図った。 まとめ
前半終了
約3年の運用で培った Playwrightの実践知( Tips)の紹介
43 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://tech.legalforce.co.jp/entry/2023/03/31/114250 はや3年...
44 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-fixtures テストで使う環境(page や browser など)を用意し、テスト後の片付けまで行っ てくれる仕組み。 ここをカスタマイズすれば、テスト実行の際に便利なものを仕込んでおくことがで きる。 [1] Test Fixturesの活用
45 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. • テストレポートのカスタマイズ ◦ エラーが発生したAPIの出力 ◦ 遅いAPIの検知と出力 • 認証済みのページをテスト実行前に作成 [1] Test Fixturesの活用
46 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/locators 可能な限り、page.getByRole()を利用する。 テスト実装時にアクセシビリティ上の不備があった場合に気づくことができる。 - 日本語のページなのにラベリングが英語になっている。 - ラベリングが重複していて、識別できない。 - etc [2] 推奨される Locatorsの利用
47 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/api/class-test#test-step 適切に手順を記載することで、テストレポートが誰でも理解しやすいものになる。 [3] test.step()の利用
48 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. リソースを確認しつつ、テストの並列実行数を調整できる。 [4] 実行環境モニタリングダッシュボードの作成
49 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 機能増加に伴い、Page Objectファイル内の操作関数が増え見通しが悪くなっ た。 そのため、役割ごとに分割することで管理しやすくする。 [5] Page Objectファイルの肥大化を防ぐ
50 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/api/class-locator#locator-wait-for 待ちを入れたい場合は、まずはwaitFor()の利用で実現できないかを考える。 要素の状態に対して待ちを入れられるので、 waitForTimeout()の固定時間の待ちと比較してテストの安定性と効率が上がる。 [6] 可能な限り waitFor()を利用する
51 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. スケルトンスクリーンの表示から非表示になるまでを一つの関数として用意する ことでテストの安定化を図っている。 [7] カスタマイズした waitを利用する async waitForLoading(): Promise<void> { await skeleton.waitFor({ state: 'visible' }); await skeleton.waitFor({ state: 'hidden' }); }
52 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. timeoutを極端に長く設定してしまうと、UIの要素変更によりテストが失敗する場 合に実行時間が無駄に伸びてしまうため注意する。 例えばclick({ timeout: 30_000 })とすると、要素に変更が加わって特定できな かっただけで30秒も待ってしまう。 スパッと終わらせてやるのも重要。 [8] 必要最低限の timeoutを設定する
53 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. テスト対象の画面に直接アクセスし、前提となる不要なステップ(画面遷移や初 期操作)をスキップする。 - テスト実行時間の短縮 - (ステップを踏まないことによる)テストの安定化 ※ 不要となるステップは別のテストで担保されている前提。 [9] 直遷移の活用
54 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. 状況に応じて、UI の更新をページリロードで確認するのではなく、対応するバッ クエンド API のレスポンスを待つことで、状態反映の完了待ちを行っている。 例として、ファイルアップロード後の一覧画面への反映など、非同期で反映される 更新系操作などはこれを利用している。 [10] APIからの応答を待つ
55 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. “検証したいこと”以外のアサーションは行わない。 - テストケース名(検証したいこと)とアサーションのズレを防ぐため。 - 失敗時に何のテストなのかが判断しづらくなるため。 [11] 不必要なアサーションを行わない
56 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. テストデータの復元や削除などの後処理は、次回のテストの前処理として行う。 アプリケーションをテストが失敗した状態で残しておきたいため。 [12] 後片付けは前処理に持っていく
57 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. ダウンロードのテストを行う場合、ダウンロード先をtest-resultsディレクトリ配下に設 定することで、次回テスト時にPlaywright側でクリーンアップされるため便利である。 [13] ダウンロード先フォルダとして、 test-results の利用
58 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-projects Test Projectsを利用して、マイクロサービスごとにテストを分割して実行している。 [14] 状況に応じたテストの実行戦略
59 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-annotations#tag-tests 各サービスを跨いだリグレッションテストを実施したい場合は、tagを利用して各サー ビスにおける重要度の高いテストをまとめて実行している。 [14] 状況に応じたテストの実行戦略
60 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-timeouts#global-timeout Kubernetesなどのインフラ側のタイムアウトにより、テスト実行中にコンテナごと停止 してしまった場合はテストレポートが出力されない。 globalTimeoutにてテスト全体のタイムアウト時間を設定することで、それを回避す る。 [15] globalTimeoutの設定 globalTimeout < インフラ側のタイムアウト
61 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. https://playwright.dev/docs/test-global-setup-teardown [16] テスト実施前にアプリケーションが壊れていないことを確認する
62 本資料は貴社の便宜のためのみに提供されるものであり、複写、引用または第三者の閲覧に共される際は株式会社 LegalOn Technologiesの了承を得てください。また、当該資料の利用により直接または間接に生じた損害や損失等について、株式会社 LegalOn Technologiesは一切の責任を負いません。 ©LegalOn Technologies, Inc. all
rights reserved. アプリケーションの多言語化に伴い、CSVで切り替えられるような仕組みを導入して いる。これにより共通のPageObjectを利用できる。 [17] 多言語対応 email: page.getByRole('textbox', { name: t({ key: 'email' }) }); password: page.getByRole('textbox', { name: t({ key: 'password' }) }); email,Email password,Password email,メールアドレス password,パスワード en-US.csv ja-JP.csv
株式会社LegalOn Technologies https://legalontech.jp/