6月2日

文章管理系统测试报告

1 概述

1.1 背景

测试对象为“文章后台管理系统”,这是一个基于 Vue3 技术栈构建的现代化前端应用程序,结合黑马提供的现成后端接口进行开发。该系统旨在为管理员提供高效、便捷的内容管理平台,主要功能包括用户注册与登录、文章发布与编辑、文章分类管理以及用户账户管理等。系统在本地部署用于测试,运行于 Windows 平台,通过浏览器访问。前端使用 Vite 作为构建工具,依赖项在本地管理,后端源代码及 API 由黑马提供,接口文档参考黑马提供的 API 文件(未提供具体下载地址,测试基于本地部署环境)。

1.2 测试目的

本次测试旨在全面评估“文章管理系统”的功能完整性、系统性能、多平台兼容性以及安全性,确保系统能够稳定、高效地满足内容管理的核心需求。通过测试发现潜在问题,并提出改进建议,以提升整体系统的可靠性和用户体验。

1.3 小组分工

陈志峰:负责Jemeter系统测试。

牟兆迪:负责Jemeter性能测试。

郭永刚:负责Postman集成测试。

王泽阳:负责Selenium功能测试。

齐飞跃:负责JUnit单元测试。

1.4 参考资料

书籍:《软件测试》(Ron Patton 著)、《Web 应用测试》(Hung Q. Nguyen 著)

文章:Vue3 测试相关在线资源(如 Vue 测试指南

测试工具:

Selenium:功能测试

Jmeter:性能测试

JUnit:单元测试

Postman:集成测试

2 软硬件测试

2.1 主要硬件参数

电脑型号:华硕天选2笔记本电脑

操作系统:Windows 11 家庭中文版

处理器:11th Gen Intel(R) Core(TM) i5-11400H @ 2.70GHz   2.69 GHz

内存:16 GB DDR4 3200MHz

主硬盘:512 GB SSD

显卡:Nvidia GeForce RTX 3050 4GB

显示器:15.6英寸IPS显示屏,1920x1080分辨率,144Hz刷新率

光驱:无

声卡:内置声卡,支持DTS:X Ultra技术

网卡:1000Mbps以太网卡,支持802.11ax无线协议,2×2MiMO,蓝牙5.0模块

2.2 主要软件环境

操作系统:Windows 11

数据库系统:mysql

前端技术:

核心框架:Vue3

构建工具:Vite

状态管理:Pinia

UI 组件库:Element Plus

HTTP 请求库:Axios

富文本编辑器:VueQuill

3 功能测试

3.1 功能检验

详见本组 QTP 功能测试报告,涵盖用户管理、文章分类管理和文章管理模块的详细测试结果,基于以下主要接口:

用户管理:/api/reg, /api/login, /my/userinfo (GET, PUT), /my/update/avatar, /my/updatepwd

文章分类管理:/my/cate/list, /my/cate/add, /my/cate/info, /my/cate/del

文章管理:/my/article/list, /my/article/add, /my/article/info, /my/article/edit, /my/article/info (DELETE)

3.2 功能导航测试

功能导航测试验证系统中所有导航链接是否正确指向目标页面,页面是否存在,以及是否无孤立页面(即无链接指向,仅通过 URL 访问的页面)。测试采用 Xenu’s Link Sleuth 工具和手工测试结合的方式进行,结果整理如下:

表 3-2 功能导航测试

序号

名称

内容

测试结果

1

首页

http://localhost:8080/dashboard

通过

2

用户管理

http://localhost:8080/user-management

通过

3

文章分类

http://localhost:8080/category-management

通过

4

文章列表

http://localhost:8080/article-list

通过

5

文章发布

http://localhost:8080/article-publish

通过

6

用户登录

http://localhost:8080/login

通过

所有导航链接均正常,页面可访问,无孤立页面。

3.3 表单测试

对涉及用户输入的接口(用户注册、登录、用户信息更新、头像更新、密码重置、文章分类新增/更新、文章发布/编辑)进行测试,验证输入参数的完整性、格式正确性及系统错误处理能力。以下为每个接口的测试详情:

用户管理模块

1.用户注册(POST /api/reg)

参数:username, password, repassword

测试内容:

用户名:支持字母、数字、汉字,长度无限制。

密码:最短 7 位,必须包含非字母数字字符“1.”。

确认密码:必须与密码一致。

测试用例:

有效输入:username="test123", password="abc1231.", repassword="abc1231." → 注册成功。

无效输入:username="test123"(已存在) → 返回“用户名已占用”。

无效输入:password="abc123"(无“1.”或少于 7 位) → 返回“密码格式错误”。

无效输入:repassword 不一致 → 返回“确认密码不匹配”。

结果:系统正确验证输入,错误提示清晰。

2.用户登录(POST /api/login)

参数:username, password

测试内容:

用户名和密码:必须为已注册的账户信息。

测试用例:

有效输入:username="test123", password="abc1231." → 登录成功,返回 Token。

无效输入:username="test123", password="wrong" → 返回“用户名或密码错误”,密码输入框清空。

无效输入:username="nonexistent" → 返回“用户名或密码错误”。

结果:登录功能正常,仅允许有效用户登录。

3.更新用户基本信息(PUT /my/userinfo)

参数:id, nickname, email

测试内容:

id:必须为当前登录用户 ID。

nickname:支持字母、数字、汉字,长度 1-50 字符。

email:必须为有效邮箱格式(如 user@example.com)。

测试用例:

有效输入:id=1, nickname="新昵称", email="new@example.com" → 更新成功。

无效输入:email="invalid" → 返回“邮箱格式错误”。

无效输入:id 不匹配 → 返回“无权限”。

认证:需有效 Token。

结果:系统正确验证输入,更新功能正常。

4.更新用户头像(PATCH /my/update/avatar)

参数:avatar(base64 格式图片字符串)

测试内容:

avatar:必须为有效 base64 编码的 JPG/PNG 图片,文件大小小于 2MB。

测试用例:

有效输入:avatar=有效 base64 字符串 → 更新成功。

无效输入:avatar=非图片 base64 字符串 → 返回“无效图片格式”。

无效输入:avatar=超大图片(>2MB) → 返回“图片大小超限”。

认证:需有效 Token。

结果:头像更新功能正常,验证严格。

5.重置用户密码(PATCH /my/updatepwd)

参数:old_pwd, new_pwd, re_pwd

测试内容:

old_pwd:必须与当前密码匹配。

new_pwd:最短 7 位,包含非字母数字字符“1.”。

re_pwd:必须与 new_pwd 一致。

测试用例:

有效输入:old_pwd="abc1231.", new_pwd="new1231.", re_pwd="new1231." → 重置成功。

无效输入:old_pwd 错误 → 返回“原密码错误”。

无效输入:new_pwd 无“1.” → 返回“新密码格式错误”。

无效输入:re_pwd 不一致 → 返回“确认密码不匹配”。

认证:需有效 Token。

结果:密码重置功能正常,验证严格。

posted @ 2025-06-02 07:54  序章0  阅读(31)  评论(0)    收藏  举报