139 lines
3.5 KiB
Batchfile
139 lines
3.5 KiB
Batchfile
|
|
@echo off
|
|||
|
|
REM ============================================================
|
|||
|
|
REM 订单全流程管理系统 - 自动化测试执行脚本
|
|||
|
|
REM ============================================================
|
|||
|
|
|
|||
|
|
echo ========================================
|
|||
|
|
echo 订单全流程管理系统 - 自动化测试
|
|||
|
|
echo ========================================
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM 设置颜色
|
|||
|
|
set GREEN=[92m
|
|||
|
|
set RED=[91m
|
|||
|
|
set YELLOW=[93m
|
|||
|
|
set NC=[0m
|
|||
|
|
|
|||
|
|
REM 检查 Python 环境
|
|||
|
|
echo %YELLOW%检查 Python 环境...%NC%
|
|||
|
|
python --version >nul 2>&1
|
|||
|
|
if errorlevel 1 (
|
|||
|
|
echo %RED%错误: 未找到 Python,请先安装 Python 3.8+%NC%
|
|||
|
|
exit /b 1
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
REM 检查 pytest 是否安装
|
|||
|
|
echo %YELLOW%检查 pytest...%NC%
|
|||
|
|
pip show pytest >nul 2>&1
|
|||
|
|
if errorlevel 1 (
|
|||
|
|
echo %YELLOW%安装 pytest...%NC%
|
|||
|
|
pip install pytest pytest-asyncio httpx
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
REM 检查前端依赖
|
|||
|
|
echo %YELLOW%检查前端测试依赖...%NC%
|
|||
|
|
if not exist "e2e\node_modules" (
|
|||
|
|
echo %YELLOW%安装前端测试依赖...%NC%
|
|||
|
|
cd e2e
|
|||
|
|
npm install
|
|||
|
|
npx playwright install chromium
|
|||
|
|
cd ..
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
echo.
|
|||
|
|
echo ========================================
|
|||
|
|
echo 开始执行测试
|
|||
|
|
echo ========================================
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM ============================================================
|
|||
|
|
REM 后端测试
|
|||
|
|
REM ============================================================
|
|||
|
|
echo %GREEN%[1/4] 执行后端单元测试...%NC%
|
|||
|
|
cd backend
|
|||
|
|
python -m pytest tests/ -v --tb=short -q
|
|||
|
|
set BACKEND_RESULT=%errorlevel%
|
|||
|
|
cd ..
|
|||
|
|
|
|||
|
|
if %BACKEND_RESULT% equ 0 (
|
|||
|
|
echo %GREEN%后端测试通过%NC%
|
|||
|
|
) else (
|
|||
|
|
echo %RED%后端测试失败%NC%
|
|||
|
|
)
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM ============================================================
|
|||
|
|
REM P0 测试(关键路径)
|
|||
|
|
REM ============================================================
|
|||
|
|
echo %GREEN%[2/4] 执行 P0 关键路径测试...%NC%
|
|||
|
|
cd backend
|
|||
|
|
python -m pytest tests/ -v -m "p0" --tb=short
|
|||
|
|
set P0_RESULT=%errorlevel%
|
|||
|
|
cd ..
|
|||
|
|
|
|||
|
|
if %P0_RESULT% equ 0 (
|
|||
|
|
echo %GREEN%P0 测试通过%NC%
|
|||
|
|
) else (
|
|||
|
|
echo %RED%P0 测试失败%NC%
|
|||
|
|
)
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM ============================================================
|
|||
|
|
REM 端到端测试
|
|||
|
|
REM ============================================================
|
|||
|
|
echo %GREEN%[3/4] 执行端到端流程测试...%NC%
|
|||
|
|
cd backend
|
|||
|
|
python -m pytest tests/ -v -m "e2e" --tb=short
|
|||
|
|
set E2E_RESULT=%errorlevel%
|
|||
|
|
cd ..
|
|||
|
|
|
|||
|
|
if %E2E_RESULT% equ 0 (
|
|||
|
|
echo %GREEN%E2E 测试通过%NC%
|
|||
|
|
) else (
|
|||
|
|
echo %RED%E2E 测试失败%NC%
|
|||
|
|
)
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM ============================================================
|
|||
|
|
REM 前端 E2E 测试
|
|||
|
|
REM ============================================================
|
|||
|
|
echo %GREEN%[4/4] 执行前端 E2E 测试...%NC%
|
|||
|
|
cd e2e
|
|||
|
|
npx playwright test --project=chromium
|
|||
|
|
set FRONTEND_RESULT=%errorlevel%
|
|||
|
|
cd ..
|
|||
|
|
|
|||
|
|
if %FRONTEND_RESULT% equ 0 (
|
|||
|
|
echo %GREEN%前端 E2E 测试通过%NC%
|
|||
|
|
) else (
|
|||
|
|
echo %RED%前端 E2E 测试失败%NC%
|
|||
|
|
)
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM ============================================================
|
|||
|
|
REM 测试报告
|
|||
|
|
REM ============================================================
|
|||
|
|
echo ========================================
|
|||
|
|
echo 测试执行完成
|
|||
|
|
echo ========================================
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
echo 后端测试结果: %BACKEND_RESULT%
|
|||
|
|
echo P0 测试结果: %P0_RESULT%
|
|||
|
|
echo E2E 测试结果: %E2E_RESULT%
|
|||
|
|
echo 前端 E2E 结果: %FRONTEND_RESULT%
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
echo 查看详细报告:
|
|||
|
|
echo 后端测试: backend\htmlcov\index.html
|
|||
|
|
echo 前端测试: e2e\playwright-report\index.html
|
|||
|
|
echo.
|
|||
|
|
|
|||
|
|
REM 打开测试报告
|
|||
|
|
if exist "e2e\playwright-report\index.html" (
|
|||
|
|
echo %YELLOW%打开前端测试报告...%NC%
|
|||
|
|
start e2e\playwright-report\index.html
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
pause
|