一、项目背景该项目为轻量级测试型OJ系统部署于公网测试环境定位为教学演示、功能验证与测试练手平台非商用生产环境。- 建设目的用于OJ系统功能原型验证、教学演示、测试人员实战练习覆盖核心模块的基础展示与交互能力。- 部署环境公网IP49.235.61.1849090端口基于Web的前后端分离架构支持浏览器直接访问。​- 现状定位基础功能可用、核心判题链路待完善、数据量小、仅支持游客只读浏览适合学习与测试不承载正式教学或竞赛任务。二、项目核心功能该OJ系统聚焦基础展示与核心模块的轻量级实现功能覆盖登录、首页、题目、竞赛、排名模块具体如下1.登录模块- 系统首页提供独立登录入口游客点击可跳转专属登录页面- 所有核心业务做题、参赛、个人中心、后台管理全部需要登录后才可访问2.首页展示模块- 系统基础信息展示系统名称oj测试项目、欢迎语、访问入口。- 公告轮播最新公告按时间倒序展示支持查看公告标题、发布时间与摘要。- 数据统计近一周提交量Submissions In The Last Week等核心数据可视化展示。- 快捷入口题目列表、竞赛、排名、外部OJ支持的快速跳转。- 底部信息系统支持的远程OJ列表、版权与技术支持说明。3. 题目管理模块Latest Problem- 题目列表展示题目ID、标题、更新时间支持基础排序默认按更新时间倒序。- 题目数据包含基础题ID1标题为空、测试题ID22、111等更新时间显示为“X days ago/a month ago”格式。- 异常兼容支持空标题、长串字符等脏数据展示无页面崩溃。- 权限控制游客可浏览列表无题目详情、代码提交入口核心交互待完善。4. 竞赛管理模块Recent Contest- 竞赛列表展示竞赛ID、状态Running/Ended、类型ACM、可见范围Public、起止时间。- 竞赛状态支持Running进行中状态实时标识时间格式统一MM-DD HH:MM。- 权限控制仅展示单场测试竞赛无报名、进入竞赛、提交代码入口。5. 排名统计模块Rank: Accepted In The Last Week- 排名列表展示前10名用户包含排名#1~#10、用户名、AC数近一周。- 匿名脱敏用户名支持明文与脱敏展示如*7ain/*6ain保护用户隐私。- 数据展示AC列默认全为0无提交数据列表无分页、搜索、排序切换功能。三、对项目进行测试1.测试用例2.测试步骤选取几个作为展示1登录模块2首页模块3题目管理模块4竞赛管理模块5排名统计模块四、项目总结本次测试的OJ在线判题系统整体为轻量化实训类Web项目系统业务逻辑清晰、模块划分规范项目核心覆盖登录模块、首页模块、题目模块、竞赛模块、排名模块五大核心业务完整复刻了主流在线编程判题系统的基础架构与权限体系适用于Web功能学习与软件手动功能测试实训。在整体架构上系统以登录权限模块为核心基石搭建了完整的角色权限体系严格区分游客、普通用户与管理员三种用户身份实现权限分级管控。未登录游客仅拥有页面只读浏览权限无法操作做题、参赛、个人信息管理等核心功能普通用户登录后解锁刷题、参与竞赛、查看个人数据等业务权限管理员登录后可完成题目、公告、竞赛的后台运维管理权限逻辑闭环完整保障了系统数据安全性与业务规范性。首页模块作为系统门户承担了数据聚合与导航跳转的作用整合了系统公告、最新题目、在线竞赛、用户排行榜、平台合作OJ等关键信息集中展示系统核心数据页面布局规整能够让用户快速了解系统状态与最新动态是串联系统所有业务模块的入口载体。题目模块是OJ系统的核心业务模块支撑平台最基础的刷题学习功能。系统支持题目信息展示、题目数据更新依托登录权限区分浏览与操作权限精准划分游客只读、登录用户刷题、管理员运维的差异化功能。同时系统存在少量测试脏数据能够有效检验系统的页面容错能力整体展示功能稳定满足基础编程练习平台的设计需求。竞赛模块是OJ系统的拓展核心业务面向线上编程考核与算法竞赛场景可展示竞赛状态、竞赛类型、竞赛时间等关键信息。依托权限体系区分普通用户参赛权限与管理员赛事管理权限实现了编程竞赛场景的基础业务闭环模拟了高校课程考核、线上算法比赛的真实业务场景。排名模块是系统的数据统计展示模块依托用户刷题、代码提交数据统计用户解题通过率与AC数量生成用户排行榜直观展示用户编程学习成果。不仅可以激励用户刷题练习同时完善了OJ系统学习、竞赛、数据统计的完整业务链路丰富了平台的功能性与实用性。综合来看该OJ五大核心模块分工明确、相互联动以登录权限为基础首页为载体题目、竞赛为核心业务排名为数据反馈构成了一套完整的轻量化在线判题系统。系统整体运行稳定、页面兼容性良好、业务逻辑符合主流OJ设计规范虽然部分交互功能仅做基础展示、未完全落地但整体架构完整、业务场景真实非常适合用于Web系统认知、手动功能测试练习以及课程实训学习。