@echo off
chcp 65001 > nul
echo ====================================
echo 项目管理首页功能测试脚本
echo ====================================
echo.

echo 【测试前置条件】
echo 1. 后端服务已启动 (端口 8080)
echo 2. 前端服务已启动 (端口 80)
echo 3. 已登录管理员账号 (admin/admin123)
echo.

echo 【测试步骤】
echo.
echo ==========================================
echo 第一部分：搜索功能测试
echo ==========================================
echo.
echo 测试1.1：项目名称搜索
echo   ① 在搜索框输入"测试"
echo   ② 点击"搜索"按钮
echo   ✓ 预期：表格显示项目名称包含"测试"的项目
echo   ✓ 验证：检查列表中所有项目名称是否包含"测试"
echo.

echo 测试1.2：状态筛选
echo   ① 点击"项目状态"下拉框
echo   ② 选择"进行中"
echo   ✓ 预期：表格只显示状态为"进行中"的项目
echo   ✓ 验证：检查所有项目状态标签是否为"进行中"
echo.

echo 测试1.3：组合搜索
echo   ① 输入项目名称"测试"
echo   ② 选择状态"已完成"
echo   ③ 点击"搜索"
echo   ✓ 预期：表格显示名称包含"测试"且状态为"已完成"的项目
echo.

echo 测试1.4：重置功能
echo   ① 先输入搜索条件和选择状态
echo   ② 点击"重置"按钮
echo   ✓ 预期：搜索框清空，状态选择清空，显示所有项目
echo   ✓ 验证：检查 queryParams 是否重置为初始状态
echo.

pause
echo.
echo ==========================================
echo 第二部分：操作按钮测试
echo ==========================================
echo.
echo 测试2.1：进行中项目操作按钮
echo   ① 找到状态为"进行中"的项目
echo   ② 查看操作列
echo   ✓ 预期：只显示"进入项目"按钮
echo   ✓ 验证：不显示"查看结果"、"重新分析"、"归档"按钮
echo   ③ 点击"进入项目"按钮
echo   ✓ 预期：显示消息提示"进入项目: [项目名]"
echo.

echo 测试2.2：已完成项目操作按钮
echo   ① 找到状态为"已完成"的项目
echo   ② 查看操作列
echo   ✓ 预期：显示三个按钮："查看结果"、"重新分析"、"归档"
echo   ✓ 验证：不显示"进入项目"按钮
echo   ③ 依次点击三个按钮
echo   ✓ 预期：每个按钮都显示对应的提示消息
echo.

echo 测试2.3：已归档项目操作按钮
echo   ① 找到状态为"已归档"的项目
echo   ② 查看操作列
echo   ✓ 预期：只显示"查看结果"按钮
echo   ✓ 验证：不显示其他按钮
echo   ③ 点击"查看结果"按钮
echo   ✓ 预期：显示消息提示"查看项目结果: [项目名]"
echo.

pause
echo.
echo ==========================================
echo 第三部分：视觉测试
echo ==========================================
echo.
echo 测试3.1：表头样式
echo   ① 查看表头背景色
echo   ✓ 预期：灰色背景 (#f5f5f5)
echo   ② 查看表头字体
echo   ✓ 预期：深色粗体文字，字体大小 14px
echo.

echo 测试3.2：表格行样式
echo   ① 查看行高
echo   ✓ 鐏期：行高 50px，内边距 12px
echo   ② 查看边框
echo   ✓ 预期：底部边框为浅灰色 (#f0f0f0)
echo.

echo 测试3.3：悬停效果
echo   ① 鼠标悬停在表格行上
echo   ✓ 预期：行背景色变为浅灰色 (#f5f5f5)
echo   ② 检查过渡效果
echo   ✓ 预期：背景色变化有平滑过渡动画 (0.3s)
echo.

echo 测试3.4：状态列样式
echo   ① 查看状态列宽度
echo   ✓ 预期：宽度为 160px
echo   ② 查看状态标签样式
echo   ✓ 预期：使用 el-tag 组件，不同状态显示不同颜色
echo.

echo 测试3.5：操作按钮样式
echo   ① 查看操作按钮颜色
echo   ✓ 预期：文字按钮，蓝色 (#1890ff)
echo   ② 鼠标悬停在操作按钮上
echo   ✓ 预期：颜色变为深蓝色 (#096dd9)，出现下划线
echo.

pause
echo.
echo ==========================================
echo 第四部分：响应式测试
echo ==========================================
echo.
echo 测试4.1：1366x768 分辨率
echo   ① 打开浏览器开发者工具 (F12)
echo   ② 切换到设备模拟器
echo   ③ 设置分辨率为 1366x768
echo   ④ 检查表格显示
echo   ✓ 预期：表格正常显示，无错位
echo   ✓ 预期：横向滚动条正常工作
echo.

echo 测试4.2：1920x1080 分辨率
echo   ① 设置分辨率为 1920x1080
echo   ② 检查表格显示
echo   ✓ 预期：表格正常显示，充分利用空间
echo   ✓ 预期：所有列宽度合理分配
echo.

echo 测试4.3：表格滚动
echo   ① 添加超过10个项目（如果不足）
echo   ② 测试垂直滚动
echo   ✓ 预期：垂直滚动流畅
echo   ③ 缩小浏览器窗口宽度
echo   ④ 测试水平滚动
echo   ✓ 预期：操作列固定在右侧，水平滚动正常
echo.

pause
echo.
echo ==========================================
echo 第五部分：控制台日志检查
echo ==========================================
echo.
echo 测试5.1：浏览器控制台无错误
echo   ① 打开浏览器开发者工具 (F12)
echo   ② 切换到 Console 标签
echo   ③ 执行上述所有操作
echo   ✓ 预期：控制台无 JavaScript 错误
echo   ✓ 预期：控制台无 Vue 警告
echo.

echo 测试5.2：网络请求检查
echo   ① 切换到 Network 标签
echo   ② 执行搜索操作
echo   ✓ 预期：发送正确的 API 请求
echo   ✓ 预期：请求参数正确 (projectName, status)
echo   ✓ 预期：响应数据格式正确
echo.

echo ==========================================
echo 测试完成
echo ==========================================
echo.
echo 请根据上述测试用例逐一验证功能。
echo 如发现问题，请记录以下信息：
echo   1. 问题描述
echo   2. 复现步骤
echo   3. 预期结果
echo   4. 实际结果
echo   5. 截图证据
echo.
pause
