一、项目概述
1.1 项目背景
本项目为博客系统 UI 自动化测试,旨在通过自动化测试手段,验证博客系统核心功能的正确性、稳定性与用户体验一致性,覆盖登录、博客列表、博客编辑、博客详情等核心业务流程,保障系统上线质量。
1.2 测试范围
本次测试基于思维导图覆盖的核心模块,具体范围如下:
| 模块 | 测试范围 |
|---|---|
| 登录页面 | 页面可用性、正常登录、异常登录场景 |
| 博客列表页 | 登录 / 未登录状态下的页面访问、功能展示 |
| 编辑博客页 | 页面多入口访问、正常 / 异常提交、未登录权限控制 |
| 博客详情页 | 登录 / 未登录状态下的页面访问、权限控制 |
1.3 测试目的
- 验证系统核心功能符合需求设计,无功能性缺陷
- 验证系统权限控制逻辑正确,未登录用户无法执行敏感操作
- 提升测试效率,替代重复手工测试,保障回归测试质量
- 识别系统潜在风险,为版本迭代提供质量依据
二、测试环境
2.1 软硬件环境
| 环境项 | 配置详情 |
|---|---|
| 应用服务 | 博客系统版本:v1.0.0,部署环境:Tomcat 9.x/ Nginx 1.2x |
| 数据库 | MySQL 8.0,测试数据已初始化 |
| 自动化框架 | Selenium 4.x + Java 17 + TestNG 7.x |
| 浏览器环境 | Firefox 119+(兼容测试) |
| 测试设备 | Windows 11 专业版,内存 16G+ |
2.2 测试账号
| 账号类型 | 账号 | 密码 | 权限 |
|---|---|---|---|
| 合法登录账号 | zhangsan | 123456 | 普通用户 / 博客操作权限 |
三、测试用例设计与执行
3.1 用例设计依据
本次测试用例基于思维导图拆解的业务场景,遵循等价类划分、边界值分析、场景法等测试设计方法,覆盖正常流程、异常流程、权限控制等核心场景。
3.2 各模块测试用例执行情况
3.2.1 登录页面模块
| 用例 ID | 用例名称 | 前置条件 | 测试步骤 | 预期结果 | 实际结果 | 测试状态 |
|---|---|---|---|---|---|---|
| LOGIN-001 | 登录页面可用性测试 | 系统正常运行 | 访问登录页 URL | 页面正常打开,元素展示完整 | 与预期一致 | 通过 |
| LOGIN-002 | 正确账号密码登录 | 登录页可访问 | 输入账号 zhangsan,密码 123456,点击登录 | 登录成功,跳转博客列表页 | 与预期一致 | 通过 |
| LOGIN-003 | 账号为空登录 | 登录页可访问 | 账号留空,输入密码 123456,点击登录 | 登录失败,提示 "账号不能为空" | 与预期一致 | 通过 |
| LOGIN-004 | 密码为空登录 | 登录页可访问 | 输入账号 zhangsan,密码留空,点击登录 | 登录失败,提示 "密码不能为空" | 与预期一致 | 通过 |
| LOGIN-005 | 账号错误登录 | 登录页可访问 | 输入错误账号,密码 123456,点击登录 | 登录失败,提示 "账号或密码错误" | 与预期一致 | 通过 |
| LOGIN-006 | 密码错误登录 | 登录页可访问 | 输入账号 zhangsan,错误密码,点击登录 | 登录失败,提示 "账号或密码错误" | 与预期一致 | 通过 |
3.2.2 博客列表页模块
| 用例 ID | 用例名称 | 前置条件 | 测试步骤 | 预期结果 | 实际结果 | 测试状态 |
|---|---|---|---|---|---|---|
| LIST-001 | 登录状态下列表页访问 | 已登录系统 | 访问博客列表页 | 页面正常打开,个人信息、菜单、博客列表展示完整 | 与预期一致 | 通过 |
| LIST-002 | 未登录状态下列表页访问 | 未登录系统 | 访问博客列表页 | 弹窗提示登录,点击弹窗跳转登录页 | 与预期一致 | 通过 |
3.2.3 编辑博客页模块
| 用例 ID | 用例名称 | 前置条件 | 测试步骤 | 预期结果 | 实际结果 | 测试状态 |
|---|---|---|---|---|---|---|
| EDIT-001 | 直接 URL 访问编辑页 | 已登录系统 | 输入编辑页 URL | 页面正常打开 | 与预期一致 | 通过 |
| EDIT-002 | 列表页跳转编辑页 | 已登录,列表页可访问 | 列表页点击 "写博客" | 页面正常打开 | 与预期一致 | 通过 |
| EDIT-003 | 详情页跳转编辑页 | 已登录,博客详情页可访问 | 详情页点击 "编辑" | 页面正常打开 | 与预期一致 | 通过 |
| EDIT-004 | 正常填写提交博客 | 编辑页可访问 | 填写标题 + 内容,点击提交 | 提交成功,跳转博客列表 / 详情页 | 与预期一致 | 通过 |
| EDIT-005 | 不写标题提交 | 编辑页可访问 | 仅填内容,标题留空,点击提交 | 提交失败,提示 "标题不能为空" | 与预期一致 | 通过 |
| EDIT-006 | 不写内容提交 | 编辑页可访问 | 仅填标题,内容留空,点击提交 | 提交失败,提示 "内容不能为空" | 与预期一致 | 通过 |
| EDIT-007 | 标题内容都不写提交 | 编辑页可访问 | 标题内容均留空,点击提交 | 提交失败,提示对应错误 | 与预期一致 | 通过 |
| EDIT-008 | 未登录 URL 访问编辑页 | 未登录系统 | 输入编辑页 URL | 页面可打开,但提交按钮置灰 / 不可用 | 与预期一致 | 通过 |
| EDIT-009 | 未登录提交博客 | 未登录,编辑页可访问 | 填写内容点击提交 | 提交失败,弹窗提示登录,跳转登录页 | 与预期一致 | 通过 |
3.2.4 博客详情页模块
| 用例 ID | 用例名称 | 前置条件 | 测试步骤 | 预期结果 | 实际结果 | 测试状态 |
|---|---|---|---|---|---|---|
| DETAIL-001 | 登录状态下详情页访问 | 已登录系统,博客存在 | 访问博客详情页 URL | 页面正常打开,内容展示完整 | 与预期一致 | 通过 |
| DETAIL-002 | 未登录状态下详情页访问 | 未登录系统,博客存在 | 访问博客详情页 URL | 弹窗提示登录,点击弹窗跳转登录页 | 与预期一致 | 通过 |
3.3 测试执行统计
| 统计项 | 数值 |
|---|---|
| 总用例数 | 20 |
| 通过用例数 | 20 |
| 失败用例数 | 0 |
| 阻塞用例数 | 0 |
| 用例通过率 | 100% |
3.4自动化代码示例:
Gitee:https://gitee.com/gu-youyan-jane/ui-automation-testing-project
四、缺陷统计与分析
4.1 缺陷统计
本次测试共发现缺陷 0 个,无严重、一般、轻微级别缺陷,系统核心功能运行稳定。
五、测试结论与建议
5.1 测试结论
- 博客系统核心功能(登录、列表、编辑、详情)均符合需求设计,用例通过率 100%
- 系统权限控制逻辑正确,未登录用户无法执行发布博客等敏感操作
- 异常场景处理完善,空输入、错误账号密码等场景均有正确提示
- 多入口访问逻辑一致,页面跳转正常,无页面 404、元素缺失等问题
- 系统满足上线要求,可发布生产环境。
5.2 优化建议
- 用例扩展:可补充浏览器兼容性测试(如 Edge、Safari)、多设备响应式测试
- 性能优化:可新增 UI 自动化性能用例,验证页面加载速度、接口响应时间
- 持续集成:将自动化测试用例接入 CI/CD 流程,实现代码提交后自动回归测试
- 用例维护:后续版本迭代时,同步更新测试用例,保障用例与业务一致性
测试人员:邱境东
测试日期:2026年 4月 10 日
报告版本:V1.0