docs: project docs, scripts, deployment configs, and evidence
This commit is contained in:
137
test_all.bat
Normal file
137
test_all.bat
Normal file
@@ -0,0 +1,137 @@
|
||||
@echo off
|
||||
REM 用户管理系统 - Windows测试执行脚本
|
||||
|
||||
echo ==========================================
|
||||
echo 用户管理系统 - 测试执行脚本
|
||||
echo ==========================================
|
||||
|
||||
REM 颜色定义
|
||||
chcp 65001 >nul
|
||||
|
||||
:menu
|
||||
echo.
|
||||
echo 请选择测试类型:
|
||||
echo 1. 运行所有测试
|
||||
echo 2. 运行单元测试
|
||||
echo 3. 运行集成测试
|
||||
echo 4. 运行E2E测试
|
||||
echo 5. 运行鲁棒性测试
|
||||
echo 6. 生成覆盖率报告
|
||||
echo 7. 运行性能基准测试
|
||||
echo 8. 运行竞态检测
|
||||
echo 0. 退出
|
||||
echo.
|
||||
set /p choice=请输入选项(0-8):
|
||||
|
||||
if "%choice%"=="1" goto all_tests
|
||||
if "%choice%"=="2" goto unit_tests
|
||||
if "%choice%"=="3" goto integration_tests
|
||||
if "%choice%"=="4" goto e2e_tests
|
||||
if "%choice%"=="5" goto robust_tests
|
||||
if "%choice%"=="6" goto coverage
|
||||
if "%choice%"=="7" goto benchmark
|
||||
if "%choice%"=="8" goto race
|
||||
if "%choice%"=="0" goto end
|
||||
goto menu
|
||||
|
||||
:check_go
|
||||
echo [INFO] 检查Go环境...
|
||||
where go >nul 2>&1
|
||||
if %errorlevel% neq 0 (
|
||||
echo [ERROR] Go未安装
|
||||
pause
|
||||
exit /b 1
|
||||
)
|
||||
goto :eof
|
||||
|
||||
:all_tests
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行所有测试
|
||||
echo ==========================================
|
||||
call :unit_tests
|
||||
echo [INFO] ✅ 所有测试准备完成
|
||||
echo ==========================================
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:unit_tests
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行单元测试
|
||||
echo ==========================================
|
||||
echo [INFO] 测试Domain层...
|
||||
go test -v ./internal/domain/... -run "Test.*"
|
||||
echo [INFO] ✅ 单元测试完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:integration_tests
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行集成测试
|
||||
echo ==========================================
|
||||
echo [INFO] 测试集成层...
|
||||
go test -v ./internal/integration/... -run "Test.*"
|
||||
echo [INFO] ✅ 集成测试完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:e2e_tests
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行端到端测试
|
||||
echo ==========================================
|
||||
echo [INFO] 测试E2E流程...
|
||||
go test -v ./internal/e2e/... -run "Test.*"
|
||||
echo [INFO] ✅ 端到端测试完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:robust_tests
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行鲁棒性测试
|
||||
echo ==========================================
|
||||
echo [INFO] 测试鲁棒性...
|
||||
go test -v ./internal/robustness/... -run "Test.*"
|
||||
echo [INFO] ✅ 鲁棒性完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:coverage
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行测试并生成覆盖率报告
|
||||
echo ==========================================
|
||||
go test -v -coverprofile=coverage.out ./...
|
||||
go tool cover -html=coverage.out -o coverage.html
|
||||
echo [INFO] 覆盖率报告已生成: coverage.html
|
||||
go tool cover -func=coverage.out
|
||||
echo [INFO] ✅ 覆盖率测试完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:benchmark
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行性能基准测试
|
||||
echo ==========================================
|
||||
go test -bench=. -benchmem ./internal/domain/...
|
||||
echo [INFO] ✅ 性能基准测试完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:race
|
||||
call :check_go
|
||||
echo ==========================================
|
||||
echo 运行竞态检测
|
||||
echo ==========================================
|
||||
go test -race ./...
|
||||
echo [INFO] ✅ 竞态检测完成
|
||||
pause
|
||||
goto menu
|
||||
|
||||
:end
|
||||
echo 退出测试脚本
|
||||
exit /b 0
|
||||
Reference in New Issue
Block a user