30 lines
673 B
Docker
30 lines
673 B
Docker
FROM mcr.microsoft.com/playwright:v1.58.2-jammy
|
|
|
|
WORKDIR /app
|
|
|
|
# 安装依赖
|
|
COPY package*.json ./
|
|
RUN npm ci
|
|
|
|
# 复制测试文件
|
|
COPY e2e ./e2e
|
|
COPY playwright.config.ts ./
|
|
COPY tsconfig.json ./
|
|
|
|
# 创建测试结果目录
|
|
RUN mkdir -p /app/test-results /app/playwright-report
|
|
|
|
# 安装Playwright浏览器
|
|
RUN npx playwright install --with-deps chromium
|
|
|
|
# 设置环境变量
|
|
ENV CI=true
|
|
ENV PLAYWRIGHT_BROWSERS_PATH=/ms-playwright
|
|
|
|
# 运行测试
|
|
CMD ["npx", "playwright", "test", "--reporter=json", "--reporter=html", "--reporter=junit"]
|
|
|
|
# 健康检查
|
|
HEALTHCHECK --interval=30s --timeout=10s --retries=3 \
|
|
CMD test -f /app/playwright-report/index.html || exit 1
|