https://checkip.amazonaws.com/
■Playwright

/app/                          # コンテナ内のアプリケーションルート
├── package.json               # 依存関係定義
├── package-lock.json
├── node_modules/              # npmパッケージ
│   └── playwright/            # Playwrightライブラリ
├── script.js                  # メインスクリプト(実行ファイル)
└── .cache/                    # Playwrightのキャッシュ
    └── ms-playwright/         # ブラウザバイナリ保存先
        └── chromium-*/        # Chromiumバイナリ
4.結果を S3 / CloudWatch Logs で確認する

実行ログ

CloudWatch Logs → /aws/ecs/dlt-jmeter

JMeter 結果ファイル

S3 バケット(Outputバケット)に保存されます:

s3://dlt-output-bucket-xxxxxxx/results/login_loadtest_20260107/
├── jmeter.log
├── results.jtl
└── report/index.html


→ index.html をブラウザで開くと、JMeter の標準HTMLレポートが表示されます。
基本構成要素


■ Thread Group(スレッドグループ)

仮想ユーザー数(Number of Threads)
Ramp-up期間:全ユーザーを起動するまでの時間
ループ回数:テストの繰り返し回数
スケジューラー設定:開始時刻、終了時刻、実行時間


■ Sampler(サンプラー)

HTTP Request:Webアプリケーションのテスト
JDBC Request:データベースクエリのテスト
FTP Request:FTPサーバーのテスト
SOAP/REST Request:APIのテスト
TCP/UDP Sampler:低レベルプロトコルのテスト



■ HTTPリクエストの詳細設定
基本パラメータ

プロトコル(HTTP/HTTPS)
サーバー名またはIP
ポート番号
メソッド(GET/POST/PUT/DELETE等)
パス
リクエストパラメータ
ボディデータ(JSON/XML等)



■ ヘッダー設定

Content-Type
Authorization(認証トークン)
User-Agent
カスタムヘッダー



■ 制御・ロジック要素
Logic Controllers(ロジックコントローラー)

If Controller:条件分岐
Loop Controller:ループ処理
Transaction Controller:複数リクエストのグループ化
Random Controller:ランダム実行
Throughput Controller:実行頻度の制御
Once Only Controller:1回だけ実行



■ Timers(タイマー)

Constant Timer:固定待機時間
Gaussian Random Timer:正規分布のランダム待機
Uniform Random Timer:均等分布のランダム待機
Throughput Shaping Timer:スループット制御



■ データ処理要素
Config Elements(設定要素)

CSV Data Set Config:外部CSVファイルからデータ読み込み
HTTP Cookie Manager:Cookie管理
HTTP Header Manager:共通ヘッダー設定
HTTP Cache Manager:キャッシュ動作のシミュレーション
User Defined Variables:変数定義
HTTP Request Defaults:デフォルト設定



■ Pre Processors(前処理)

User Parameters:リクエスト前のパラメータ設定
JSR223 PreProcessor:スクリプト実行(Groovy等)
RegEx User Parameters:正規表現によるパラメータ抽出



■ Post Processors(後処理)

Regular Expression Extractor:レスポンスから値を抽出
JSON Extractor:JSONレスポンスのパース
XPath Extractor:XMLレスポンスのパース
Boundary Extractor:境界文字列による抽出
CSS/JQuery Extractor:HTML要素の抽出



■ 検証・アサーション
Assertions(アサーション)

Response Assertion:レスポンステキストの検証
JSON Assertion:JSON形式の検証
Duration Assertion:応答時間の検証
Size Assertion:レスポンスサイズの検証
HTML Assertion:HTML構文の検証
XPath Assertion:XML/HTMLの特定要素検証



■ 結果出力・監視
Listeners(リスナー)

View Results Tree:詳細な結果表示
Summary Report:サマリーレポート
Aggregate Report:集計レポート
Graph Results:グラフ表示
Response Time Graph:応答時間グラフ
Backend Listener:外部システムへの結果送信(InfluxDB、Graphite等)
Test Plan
├── Thread Group (100 users, 10s ramp-up)
│   ├── HTTP Request Defaults (共通設定)
│   ├── HTTP Cookie Manager
│   ├── CSV Data Set Config (テストデータ)
│   │
│   ├── Transaction Controller (ログイン)
│   │   ├── HTTP Request (POST /login)
│   │   ├── JSON Extractor (トークン抽出)
│   │   └── Response Assertion (ステータスコード200)
│   │
│   ├── Constant Timer (3秒待機)
│   │
│   ├── Transaction Controller (商品検索)
│   │   ├── HTTP Request (GET /search)
│   │   ├── Duration Assertion (2秒以内)
│   │   └── JSON Assertion (結果件数チェック)
│   │
│   └── Transaction Controller (ログアウト)
│       └── HTTP Request (POST /logout)
│
└── Listeners
    ├── Summary Report
    └── View Results Tree