54 lines
1.1 KiB
YAML
Executable file
54 lines
1.1 KiB
YAML
Executable file
version: '3.8'
|
|
|
|
services:
|
|
# Frontend app for testing
|
|
frontend:
|
|
build:
|
|
context: ..
|
|
dockerfile: Dockerfile
|
|
ports:
|
|
- "5173:80"
|
|
environment:
|
|
- NODE_ENV=production
|
|
- VITE_API_BASE_URL=http://mock-api:3000
|
|
depends_on:
|
|
- mock-api
|
|
networks:
|
|
- e2e-test
|
|
|
|
# Mock API server (simple HTTP server for testing)
|
|
mock-api:
|
|
image: node:18-alpine
|
|
working_dir: /app
|
|
volumes:
|
|
- ./mock-api:/app
|
|
command: sh -c "npm install && node server.js"
|
|
ports:
|
|
- "3000:3000"
|
|
networks:
|
|
- e2e-test
|
|
environment:
|
|
- PORT=3000
|
|
|
|
# Playwright test runner
|
|
playwright:
|
|
build:
|
|
context: ..
|
|
dockerfile: e2e/Dockerfile.playwright
|
|
depends_on:
|
|
- frontend
|
|
- mock-api
|
|
environment:
|
|
- PLAYWRIGHT_BASE_URL=http://frontend:80
|
|
volumes:
|
|
- ../playwright.config.ts:/app/playwright.config.ts
|
|
- ../e2e:/app/e2e
|
|
- ./test-results:/app/test-results
|
|
- ./playwright-report:/app/playwright-report
|
|
networks:
|
|
- e2e-test
|
|
command: npx playwright test
|
|
|
|
networks:
|
|
e2e-test:
|
|
driver: bridge
|