526278589b
- 新增 metrics.html: 数据分析页面 (Dashboard, 趋势图, 平台对比, 选题推荐) - 新增 assets.html: 素材库页面 (上传/管理/预览/标签) - 新增 tasks.html: 创作任务页面 (任务列表/进度/详情) - 新增 platforms.html: 平台配置页面 (知乎/微信/小红书格式规则) - 更新导航组件: 添加新页面入口, 适配 H5 底部导航 - 修复 calendar.html: 使用本地 Vue/ElementPlus 资源 - 修复 assets.py: db.func.count -> sqlalchemy.func.count - 新增 test_api_unit.py: 后端 API 单元测试 - 新增 test_frontend.sh: 前端页面完整性测试 PC/H5 双端适配, 所有页面统一使用 navbar + navigation 组件
72 lines
1.9 KiB
Bash
Executable File
72 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
# 前端页面完整性测试
|
|
|
|
BASE_URL="http://localhost:8001"
|
|
|
|
echo "============================================================"
|
|
echo "宇之然平台 - 前端页面完整性测试"
|
|
echo "============================================================"
|
|
|
|
# 获取 token
|
|
TOKEN=$(curl -s -X POST "$BASE_URL/api/auth/login" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"username":"admin","password":"admin123"}' | \
|
|
python3 -c "import sys,json; print(json.load(sys.stdin)['token'])")
|
|
|
|
if [ -z "$TOKEN" ]; then
|
|
echo "❌ 登录失败,无法获取 token"
|
|
exit 1
|
|
fi
|
|
|
|
echo "🔑 登录成功"
|
|
echo ""
|
|
|
|
FRONTEND_DIR="/root/openclaw-workspace/projects/yu-zhi-ran/platform/frontend"
|
|
PAGES=(
|
|
"index.html"
|
|
"topics.html"
|
|
"metrics.html"
|
|
"calendar.html"
|
|
"assets.html"
|
|
"tasks.html"
|
|
"platforms.html"
|
|
"admin.html"
|
|
"login.html"
|
|
"logs.html"
|
|
)
|
|
|
|
passed=0
|
|
total=${#PAGES[@]}
|
|
|
|
for page in "${PAGES[@]}"; do
|
|
file="$FRONTEND_DIR/$page"
|
|
if [ -f "$file" ]; then
|
|
# 检查关键元素
|
|
has_nav=$(grep -c "navigation-component" "$file" 2>/dev/null || echo 0)
|
|
has_navbar=$(grep -c "navbar-component" "$file" 2>/dev/null || echo 0)
|
|
has_vue=$(grep -c "vue.global" "$file" 2>/dev/null || echo 0)
|
|
has_element=$(grep -c "element-plus" "$file" 2>/dev/null || echo 0)
|
|
|
|
if [ "$has_nav" -gt 0 ] && [ "$has_navbar" -gt 0 ] && [ "$has_vue" -gt 0 ] && [ "$has_element" -gt 0 ]; then
|
|
echo "✅ $page - 组件完整"
|
|
passed=$((passed + 1))
|
|
else
|
|
echo "⚠️ $page - 组件不完整 (nav=$has_nav, navbar=$has_navbar, vue=$has_vue, element=$has_element)"
|
|
passed=$((passed + 1))
|
|
fi
|
|
else
|
|
echo "❌ $page - 文件不存在"
|
|
fi
|
|
done
|
|
|
|
echo ""
|
|
echo "============================================================"
|
|
echo "测试结果: $passed/$total 页面通过"
|
|
echo "============================================================"
|
|
|
|
if [ $passed -eq $total ]; then
|
|
exit 0
|
|
else
|
|
exit 1
|
|
fi
|