60 lines
1.8 KiB
Bash
60 lines
1.8 KiB
Bash
#!/bin/bash
|
|
# ============================================
|
|
# 丹阳公益婚恋服务平台 — 生产上线冒烟测试
|
|
# ============================================
|
|
set -euo pipefail
|
|
|
|
BASE_URL="${BASE_URL:-https://match.danyang.gov.cn}"
|
|
PASS=0
|
|
FAIL=0
|
|
|
|
check() {
|
|
local name="$1"
|
|
local url="$2"
|
|
local expected="$3"
|
|
local code
|
|
code=$(curl -sf -o /dev/null -w "%{http_code}" "${BASE_URL}${url}" 2>/dev/null || echo "000")
|
|
if [ "$code" = "$expected" ]; then
|
|
PASS=$((PASS + 1))
|
|
echo " ✅ $name (HTTP $code)"
|
|
else
|
|
FAIL=$((FAIL + 1))
|
|
echo " ❌ $name (期望$expected, 实际$code)"
|
|
fi
|
|
}
|
|
|
|
echo "============================================"
|
|
echo " 丹阳公益婚恋平台 — 生产冒烟测试"
|
|
echo " $(date '+%Y-%m-%d %H:%M:%S')"
|
|
echo "============================================"
|
|
echo ""
|
|
|
|
echo "【健康检查】"
|
|
check "后端live" "/api/v1/health/live" "200"
|
|
check "后端ready" "/api/v1/health/ready" "200"
|
|
check "版本信息" "/version" "200"
|
|
|
|
echo ""
|
|
echo "【认证流程】"
|
|
check "微信登录端点" "/api/v1/auth/wechat/login" "401" # 无code参数应400或401
|
|
|
|
echo ""
|
|
echo "【核心功能】"
|
|
check "用户资料接口" "/api/v1/profile" "401" # 未登录应401
|
|
check "推荐列表接口" "/api/v1/matches/recommendations" "401"
|
|
|
|
echo ""
|
|
echo "【安全接口】"
|
|
check "管理员接口无认证拒绝" "/api/v1/operator/users" "401"
|
|
check "举报提交接口" "/api/v1/risk/reports" "401"
|
|
|
|
echo ""
|
|
echo "【Nginx】"
|
|
check "Nginx首页" "/" "200"
|
|
|
|
echo ""
|
|
echo "============================================"
|
|
echo " 结果: PASS=${PASS} FAIL=${FAIL}"
|
|
echo "============================================"
|
|
[ ${FAIL} -eq 0 ] && echo "✅ 冒烟测试通过" && exit 0 || echo "❌ 存在${FAIL}个失败项" && exit 1
|