08ea5fbe98
添加用户管理视图、API和状态管理文件
73 lines
2.4 KiB
Bash
Executable File
73 lines
2.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
echo "======================================"
|
|
echo "测试基线质量检查"
|
|
echo "======================================"
|
|
echo ""
|
|
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
NC='\033[0m'
|
|
|
|
API_BASELINE_PASSED=238
|
|
API_BASELINE_RATE=100
|
|
FRONTEND_BASELINE_PASSED=386
|
|
FRONTEND_BASELINE_TOTAL=627
|
|
FRONTEND_BASELINE_RATE=61.6
|
|
|
|
echo "1. 检查API测试..."
|
|
cd everything-is-suitable-test/api
|
|
API_RESULT=$(python -m pytest tests/unit/ -v --tb=short 2>&1 | tail -5)
|
|
API_PASSED=$(echo "$API_RESULT" | grep -oP '\d+(?= passed)' || echo "0")
|
|
API_FAILED=$(echo "$API_RESULT" | grep -oP '\d+(?= failed)' || echo "0")
|
|
|
|
if [ "$API_PASSED" -eq "$API_BASELINE_PASSED" ] && [ "$API_FAILED" -eq "0" ]; then
|
|
echo -e "${GREEN}✅ API测试通过率保持100%${NC}"
|
|
else
|
|
echo -e "${RED}❌ API测试通过率下降!${NC}"
|
|
echo "基线: $API_BASELINE_PASSED passed"
|
|
echo "当前: $API_PASSED passed, $API_FAILED failed"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "2. 检查前端单元测试..."
|
|
cd ../../everything-is-suitable-admin
|
|
FRONTEND_RESULT=$(npm run test 2>&1 | grep -E "passed|failed|Test Files" | tail -5)
|
|
FRONTEND_PASSED=$(echo "$FRONTEND_RESULT" | grep -oP '\d+(?= passed)' || echo "0")
|
|
FRONTEND_FAILED=$(echo "$FRONTEND_RESULT" | grep -oP '\d+(?= failed)' || echo "0")
|
|
FRONTEND_TOTAL=$((FRONTEND_PASSED + FRONTEND_FAILED))
|
|
|
|
if [ "$FRONTEND_PASSED" -ge "$FRONTEND_BASELINE_PASSED" ]; then
|
|
FRONTEND_RATE=$(echo "scale=1; $FRONTEND_PASSED * 100 / $FRONTEND_TOTAL" | bc)
|
|
echo -e "${GREEN}✅ 前端测试通过率保持≥61.6%${NC}"
|
|
echo "通过率: $FRONTEND_RATE%"
|
|
else
|
|
echo -e "${RED}❌ 前端测试通过率下降!${NC}"
|
|
echo "基线: $FRONTEND_BASELINE_PASSED/$FRONTEND_BASELINE_TOTAL ($FRONTEND_BASELINE_RATE%)"
|
|
echo "当前: $FRONTEND_PASSED/$FRONTEND_TOTAL"
|
|
exit 1
|
|
fi
|
|
|
|
echo ""
|
|
echo "3. 检查E2E测试..."
|
|
E2E_RESULT=$(npx playwright test --reporter=list 2>&1 | grep -E "passed|failed" | tail -5)
|
|
E2E_PASSED=$(echo "$E2E_RESULT" | grep -oP '\d+(?= passed)' || echo "0")
|
|
E2E_FAILED=$(echo "$E2E_RESULT" | grep -oP '\d+(?= failed)' || echo "0")
|
|
|
|
if [ "$E2E_PASSED" -ge "48" ]; then
|
|
echo -e "${GREEN}✅ E2E测试通过数≥48${NC}"
|
|
else
|
|
echo -e "${YELLOW}⚠️ E2E测试通过数下降${NC}"
|
|
echo "基线: 48 passed"
|
|
echo "当前: $E2E_PASSED passed"
|
|
fi
|
|
|
|
echo ""
|
|
echo "======================================"
|
|
echo -e "${GREEN}✅ 测试基线质量检查通过${NC}"
|
|
echo "======================================"
|