时间筛选测试
测试基本筛选
- • 不设置任何日期,验证显示所有需求
- • 只设置开始日期,验证显示该日期之后的需求
- • 只设置结束日期,验证显示该日期之前的需求
- • 同时设置起止日期,验证显示范围内的需求
测试快速选择
- • 点击"今天",验证只显示今天创建的需求
- • 点击"本周",验证显示本周创建的需求
- • 点击"本月",验证显示本月创建的需求
- • 点击"本季度",验证显示本季度创建的需求
- • 点击"本年",验证显示本年创建的需求
测试重置功能
- • 设置时间筛选后点击"重置"
- • 验证日期输入框已清空
- • 验证显示所有需求
- • 验证统计数据恢复到全部数据
统计数据测试
需求数量统计
- • 验证统计值 = 时间段内创建的需求数
- • 验证需求列表显示数量一致
- • 验证说明文字:"该时间段内创建的需求"
总任务数统计
- • 验证统计值 = 时间段需求的任务总数
- • 手动计算验证准确性
- • 验证说明文字:"该时间段需求生成的任务"
待客户审核统计
- • 验证统计值 = 状态为"provider-approved"的任务数
- • 验证只统计时间段内需求的任务
- • 验证说明文字正确
客户已通过统计
- • 验证统计值 = 状态为"approved"的任务数
- • 验证只统计时间段内需求的任务
- • 验证说明文字正确
需求卡片交互
点击需求卡片
- • 点击需求卡片的任意位置
- • 验证跳转到 product-detail.html
- • 验证URL包含正确的 demandId 和 productId
- • 验证跳转到该需求的第一个产品的详情页
视觉反馈
- • 鼠标悬停在需求卡片上
- • 验证鼠标指针变为手型(cursor: pointer)
- • 验证边框颜色变化(hover:border-cyan-500/50)
操作提示
- • 查看需求卡片底部的提示文字
- • 验证显示:"点击卡片查看需求详情,点击产品查看产品详情"
产品卡片交互
点击产品卡片
- • 先点击"展开产品"按钮展开产品列表
- • 点击某个产品卡片
- • 验证跳转到该产品的详情页
- • 验证URL包含正确的 demandId 和 productId
事件冒泡阻止
- • 点击产品卡片
- • 验证只跳转到产品详情
- • 验证没有触发需求卡片的点击事件
- • 验证URL的productId是该产品的ID,不是第一个产品的ID
视觉反馈
- • 鼠标悬停在产品卡片上
- • 验证鼠标指针变为手型
- • 验证卡片有轻微放大效果(scale-[1.02])
- • 验证边框颜色变化(hover:border-indigo-500/50)
方案查看功能
有方案的需求
- • 找到有方案的需求(需先在需求管理中生成方案)
- • 验证显示"查看方案"按钮
- • 验证按钮可点击(非禁用状态)
- • 点击"查看方案"按钮
- • 验证跳转到方案详情页面
无方案的需求
- • 找到没有方案的需求
- • 验证显示"暂无方案"按钮
- • 验证按钮为禁用状态(disabled)
- • 验证按钮样式为灰色(cursor-not-allowed)
- • 验证点击按钮无反应
事件冒泡阻止
- • 点击"查看方案"按钮
- • 验证只触发方案查看功能
- • 验证没有触发需求卡片的点击事件
其他按钮交互
展开/收起产品按钮
- • 点击"展开产品"按钮
- • 验证产品列表展开
- • 验证按钮文本变为"收起产品"
- • 验证图标从下箭头变为上箭头
- • 验证没有触发需求卡片的点击事件
- • 点击"收起产品"按钮
- • 验证产品列表收起
- • 验证按钮文本变为"展开产品"
- • 验证图标从上箭头变为下箭头
边界情况测试
时间筛选无结果
- • 设置未来日期范围
- • 验证显示空状态
- • 验证统计数据全部为0
开始日期晚于结束日期
- • 设置不合理的日期范围
- • 验证显示空状态或提示
恰好在边界日期
- • 设置需求创建当天为开始日期
- • 验证该需求能显示
- • 设置需求创建当天为结束日期
- • 验证该需求能显示