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
0
72
E2Eテストを自動化したい
ryome
June 02, 2024
Tweet
Share
More Decks by ryome
See All by ryome
AWSデスノート〜AWSの嫌いなところまとめ〜
ryome
0
11
AWS MCPを使ってみた
ryome
0
320
ClineでAWS CDKやインフラ構成図作ってみた
ryome
1
500
PlaywrightというE2Eテストツールを布教したい
ryome
0
57
Cursorという最強エディタを使いこなしたい
ryome
0
290
AWS CodeBuildを高速化したい
ryome
0
520
CDKでAppSyncのJavaScriptリゾルバを開発したい
ryome
0
280
Cognitoの複数IDP認証でユーザを統合したい
ryome
1
1.2k
OAuth2.0完全に理解した
ryome
0
190
Other Decks in Technology
See All in Technology
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
研究開発と製品開発、両利きのロボティクス
youtalk
1
530
KotlinConf 2025_イベントレポート
sony
1
140
いま注目のAIエージェントを作ってみよう
supermarimobros
0
320
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
420
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
570
20250913_JAWS_sysad_kobe
takuyay0ne
2
230
Snowflake Intelligenceにはこうやって立ち向かう!クラシルが考えるAI Readyなデータ基盤と活用のためのDataOps
gappy50
0
260
Agile PBL at New Grads Trainings
kawaguti
PRO
1
440
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
860
Firestore → Spanner 移行 を成功させた段階的移行プロセス
athug
1
490
Practical Agentic AI in Software Engineering
uzyn
0
110
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Git: the NoSQL Database
bkeepers
PRO
431
66k
Navigating Team Friction
lara
189
15k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Automating Front-end Workflow
addyosmani
1370
200k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
How STYLIGHT went responsive
nonsquared
100
5.8k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Bash Introduction
62gerente
615
210k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
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 程度必要