From ff594121dae0642a2cbe5e392bc6acd8239f0bb9 Mon Sep 17 00:00:00 2001 From: tamakyi Date: Thu, 24 Sep 2026 20:47:23 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AA=8C=E6=94=B6=E8=84=9A=E6=9C=AC=EF=BC=9ASK?= =?UTF-8?q?IP/FAIL=20=E4=B9=9F=E6=8A=8A=E5=AD=90=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E6=95=B0=E8=BF=9B=E5=8E=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 只数顶层 `^--- SKIP` 会把子测试里的跳过漏掉 —— 那正是「看起来全绿、其实没跑」的形态。 换成 `^[[:space:]]*--- SKIP`,失败明细同理。 --- scripts/verify.sh | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/scripts/verify.sh b/scripts/verify.sh index 69e1271..d4622e7 100644 --- a/scripts/verify.sh +++ b/scripts/verify.sh @@ -111,9 +111,9 @@ echo "== 第二段:go test -count=1 -v $GOFLAGS_EXTRA $RUNARG $PKGS" go test -count=1 -v $GOFLAGS_EXTRA -timeout 2400s $RUNARG $PKGS >"$LOG" 2>&1 RC=$? -PASS=$(grep -c '^--- PASS' "$LOG" || true) -FAILN=$(grep -c '^--- FAIL' "$LOG" || true) -SKIP=$(grep -c '^--- SKIP' "$LOG" || true) +PASS=$(grep -cE '^[[:space:]]*--- PASS' "$LOG" || true) +FAILN=$(grep -cE '^[[:space:]]*--- FAIL' "$LOG" || true) +SKIP=$(grep -cE '^[[:space:]]*--- SKIP' "$LOG" || true) BADPKG=$(grep -c '^FAIL' "$LOG" || true) echo "== 结果:PASS=$PASS FAIL=$FAILN SKIP=$SKIP 非ok包=$BADPKG" @@ -121,11 +121,11 @@ echo "== 日志:$LOG" if [ "$SKIP" != 0 ]; then echo "-- 以下用例被跳过(=没跑。门控测试缺环境变量时 go test 依然回 ok,别当通过看)--" - grep -n -B1 '^--- SKIP' "$LOG" | head -40 + grep -n -B1 -E '^[[:space:]]*--- SKIP' "$LOG" | head -40 fi if [ "$FAILN" != 0 ] || [ "$BADPKG" != 0 ]; then echo "-- 失败明细(前 40 行)--" - grep -n -B2 '^--- FAIL' "$LOG" | head -40 + grep -n -B2 -E '^[[:space:]]*--- FAIL' "$LOG" | head -40 fi if [ "$RC" != 0 ] || [ "$FAILN" != 0 ] || [ "$BADPKG" != 0 ]; then