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
ryome
June 02, 2024
Technology
85
0
Share
E2Eテストを自動化したい
ryome
June 02, 2024
More Decks by ryome
See All by ryome
AWSデスノート〜AWSの嫌いなところまとめ〜
ryome
0
37
AWS MCPを使ってみた
ryome
0
600
ClineでAWS CDKやインフラ構成図作ってみた
ryome
1
610
PlaywrightというE2Eテストツールを布教したい
ryome
0
78
Cursorという最強エディタを使いこなしたい
ryome
0
330
AWS CodeBuildを高速化したい
ryome
0
670
CDKでAppSyncのJavaScriptリゾルバを開発したい
ryome
0
300
Cognitoの複数IDP認証でユーザを統合したい
ryome
1
1.4k
OAuth2.0完全に理解した
ryome
0
260
Other Decks in Technology
See All in Technology
マンション備え付けのネットワークとLTE回線を組み合わせた ネットワークの安定化の考案
harutiro
1
120
鹿野さんに聞く!CSSの最新トレンド Ver.2026
tonkotsuboy_com
6
2.9k
QAエンジニアはどうやって プロダクト議論の場に入れるのか?
moritamasami
2
420
How to learn AWS Well-Architected with AWS BuilderCards: Security Edition
coosuke
PRO
0
130
アプリブロック機能のつくりかたと、AIとHTMLの不合理な相性の良さについて
kumamotone
1
250
会社説明資料|株式会社ギークプラス ソフトウェア事業部
geekplus_tech
0
220
サイボウズ、プラットフォームエンジニアリング始めるってよ ― プラットフォームチームの事業貢献と組織アラインメントの強化
ueokande
0
100
新卒エンジニア研修、ハンズオンの設計における課題と実践知/ #tachikawaany
nishiuma
2
140
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
170
サンプリングは「作る」のか「使う」のか? 分散トレースのコストと運用を両立する実践的戦略 / Why you need the tail sampling and why you don't want it
ymotongpoo
4
170
AI駆動開発で生産性を追いかけたら、行き着いたのは品質とシフトレフトだった
littlehands
0
490
セキュリティ対策、何からはじめる? CloudNative環境の脅威モデリングと リスク評価実践入門 #cloudnativekaigi
varu3
5
800
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
225
10k
Technical Leadership for Architectural Decision Making
baasie
3
360
The Curious Case for Waylosing
cassininazir
0
340
Rails Girls Zürich Keynote
gr2m
96
14k
Optimising Largest Contentful Paint
csswizardry
37
3.7k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.3k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
We Are The Robots
honzajavorek
0
220
Discover your Explorer Soul
emna__ayadi
2
1.1k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
E2Eテストを自動化したい
E2Eテストとは? • E2E(エンドツーエンド)テストは、アプリ全体の流れが実際のユーザー 環境と同様の条件下で期待通りに動作するかを検証するテストです。 • E2Eテストは、外部システムとの連携やエラー時の動作、業務フローなど の観点でテストケースの作成をします。 • CI/CDパイプラインにE2Eテストを組み込むことで、デグレーション(新 しいコードの導入による既存機能への影響)の早期検知やテスト工数削減
などの効果が見込めます。
E2Eテスト自動化で得られる効果 • テスト工数の削減 o 自動化により繰り返し行われる手動テスト作業を削減 o バグ発見時の再テストが容易 o リリース頻度の向上 •
テスト消化漏れ(デグレ確認漏れ)の防止 o 毎回同じ品質でテストが実施される o 人為的なミスの削減 • バグの可視化 o テスト結果の自動レポート生成によるバグの可視化 o バグの追跡と管理が容易
E2Eテストツール Playwrightについて • Playwrightは、Microsoftによって開発されたオープンソースの エンドツーエンド(E2E)テスト自動化ツールです。 • Playwrightは、Chromium(Google Chrome、Microsoft Edge)、Firefox、 WebKit(Safari)など複数の主要ブラウザでのテストをサポートしています
。 • ファイルのアップロード/ダウンロード、自動スクリーンショット、ビデオ 録画、ネットワークインターセプト、モックデータの使用など、豊富な機能 を提供しています。
どうやって自動化するのか? • E2Eテストツール(Playwrightなど)を使用してテストコードを作成する • CI/CDパイプライン内でテストツールを実行する • テスト時の環境はDockerで作成する(dind)
E2Eテスト自動化導入時に気を付けること • Dockerイメージはどこから取ってくるか o DockerHubからイメージを取得するとスロットリングに引っ掛かる • コンテナ間の通信はどう行うか o Docker Composeを使用したコンテナ間の通信は、ホスト名に「localhost」ではなく、
「コンテナID」または「コンテナ名」、「サービス名」を指定する。 • CodeBuildのリソースは足りているか o Docker Composeを使用してテストを行う場合、 最低でも vCPU 4、RAM 7GB 程度必要