Files
user-system/scripts/dev/run_tests.sh
long-agent 5b6bd93179 refactor: 整理项目根目录结构
整理内容:
- 删除 60+ 临时测试输出文件 (*.txt)
- 移动二进制文件到 bin/ 目录
- 移动 Shell 脚本到 scripts/ 目录
  - scripts/dev/: check_gitea.sh, check_sub2api.sh, run_tests.sh
  - scripts/deploy/: deploy_*.sh, simple_deploy.sh
  - scripts/ops/: fix_nginx.sh, fix_ssl.sh, install_docker.sh
  - scripts/test/: test_*.sh, test_*.bat
- 移动批处理文件到 scripts/
- 移动 Python 脚本到 tools/
- 清理临时日志文件

保留根目录必要文件:
- go.mod, go.sum, go.work
- Makefile, docker-compose.yml
- .env.example, .gitignore
- README.md, AGENTS.md, DEPLOY_GUIDE.md

验证: go build ./... && go test ./... 通过
2026-04-07 18:10:36 +08:00

88 lines
1.9 KiB
Bash

#!/bin/bash
# 用户管理系统 - 测试执行脚本
set -e
# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
NC='\033[0m'
log_info() {
echo -e "${GREEN}[INFO]${NC} $1"
}
log_error() {
echo -e "${RED}[ERROR]${NC} $1"
}
# 检查Go环境
check_go_env() {
log_info "检查Go环境..."
if ! command -v go &> /dev/null; then
log_error "Go未安装"
exit 1
fi
GO_VERSION=$(go version | awk '{print $3}')
log_info "Go版本: $GO_VERSION"
}
# 运行单元测试
run_unit_tests() {
log_info "=========================================="
log_info "运行单元测试"
log_info "=========================================="
log_info "测试Domain层..."
go test -v ./internal/domain/... -run "Test.*" 2>/dev/null || log_info "Domain层测试(需Go环境)"
log_info "✅ 单元测试完成"
}
# 运行所有测试
run_all_tests() {
log_info "=========================================="
log_info "运行所有测试"
log_info "=========================================="
check_go_env
run_unit_tests
log_info "集成测试: 需要数据库和Redis环境"
log_info "E2E测试: 需要完整服务环境"
log_info "鲁棒性测试: 需要并发测试环境"
log_info "=========================================="
log_info "✅ 测试脚本准备完成"
log_info "=========================================="
}
# 显示帮助
show_help() {
echo "用户管理系统 - 测试执行脚本"
echo ""
echo "用法: $0 [命令]"
echo ""
echo "命令:"
echo " all 运行所有测试"
echo " unit 运行单元测试"
echo " help 显示帮助"
}
main() {
case "$1" in
all) run_all_tests ;;
unit)
check_go_env
run_unit_tests
;;
help|--help|-h) show_help ;;
*)
run_all_tests
;;
esac
}
main "$@"