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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ryome
June 02, 2024
Technology
0
81
E2Eテストを自動化したい
ryome
June 02, 2024
Tweet
Share
More Decks by ryome
See All by ryome
AWSデスノート〜AWSの嫌いなところまとめ〜
ryome
0
31
AWS MCPを使ってみた
ryome
0
580
ClineでAWS CDKやインフラ構成図作ってみた
ryome
1
580
PlaywrightというE2Eテストツールを布教したい
ryome
0
69
Cursorという最強エディタを使いこなしたい
ryome
0
320
AWS CodeBuildを高速化したい
ryome
0
630
CDKでAppSyncのJavaScriptリゾルバを開発したい
ryome
0
300
Cognitoの複数IDP認証でユーザを統合したい
ryome
1
1.4k
OAuth2.0完全に理解した
ryome
0
240
Other Decks in Technology
See All in Technology
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.4k
「ストレッチゾーンに挑戦し続ける」ことって難しくないですか? メンバーの持続的成長を支えるEMの環境設計
sansantech
PRO
1
220
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
29
8.7k
Devinを導入したら予想外の人たちに好評だった
tomuro
0
850
OSSで構築するIT基盤管理実践事例: NetBox・Snipe-IT・FreeRADIUS+PrivacyIDEA / Practical Case Studies of IT Infrastructure Management Using OSS
nttcom
0
190
「使いにくい」も「運用疲れ」も卒業する UIデザイナーとエンジニアが創る持続可能な内製開発
nrinetcom
PRO
1
770
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
1.6k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.8k
どこで打鍵するのが良い? IaCの実行基盤選定について
nrinetcom
PRO
2
160
オンプレとGoogle Cloudを安全に繋ぐための、セキュア通信の勘所
waiwai2111
3
1.1k
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
130
EMからVPoEを経てCTOへ:マネジメントキャリアパスにおける葛藤と成長
kakehashi
PRO
6
650
Featured
See All Featured
Design in an AI World
tapps
0
160
GraphQLとの向き合い方2022年版
quramy
50
14k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
140
Are puppies a ranking factor?
jonoalderson
1
3.1k
RailsConf 2023
tenderlove
30
1.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
810
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.7k
Leo the Paperboy
mayatellez
4
1.5k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
620
Ruling the World: When Life Gets Gamed
codingconduct
0
160
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
280
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
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 程度必要