【基于SpringBoot+Vue的高中线考试的设计与实现13000字(论文)】_第1页
【基于SpringBoot+Vue的高中线考试的设计与实现13000字(论文)】_第2页
【基于SpringBoot+Vue的高中线考试的设计与实现13000字(论文)】_第3页
【基于SpringBoot+Vue的高中线考试的设计与实现13000字(论文)】_第4页
【基于SpringBoot+Vue的高中线考试的设计与实现13000字(论文)】_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1基于SpringBoot+Vue的高中线考试的设计与实现摘要由于近年疫情影响,全国各地的中小学不得不采用远程的方式开展线上教学学校还希望测试学生的学习成绩。在线考试系统就是为了适应这个时代的需要而开发的。它的目的是让学生在家里或任何地方,在一些不可抗拒的因素下学习和测试。通过这种新模式,我们可以为学校创造一个新的学习和考试环境,提高学习和考试的效率和标准化水平,使学校管理者、教师和学生能够随时随地通过网络进行考试。与传统考试相比,在线考试系统涉及到命题组织、试卷打印、考场布置、阅卷组织等多个环节;同时,手工标记和其他因素也很费时费力。目前,随着网络技术在教育领域应用的普及,基于信息技术的在线考试系统显示出其便捷性和快速性。关键字:在线考试;SpringBoot;方便性;;目录TOC\o"1-2"\h\u10171第一章绪论 168161.1项目研究背景与意义 181531.2国内外研究现状 1184671.3论文主要研究内容 2292661.4论文组织结构 227084第二章相关理论与技术理简述 3173412.1B/S架构介绍 3198392.2后端技术介绍 380432.3前端技术介绍 3312962.4MySQL介绍 423907第三章系统需求分析 4268243.1系统需求概述 4146193.2系统用户分析 4322053.3系统功能性需求分析 7100233.4系统功能性需求 9152313.5系统非功能性需求 13105483.6本章小结 133085第四章系统总体设计 1369214.1系统功能结构设计 13218054.2系统总体架构设计 1421524.3系统功能模块设计 16176544.4系统数据库设计 16232894.5本章小结 212713第五章系统详细设计与实现 21268015.1概述 214325.2练习训练模块设计与实现 22282425.3学生答题模块设计与实现 25197755.4发布考试模块设计与实现 2979205.5本章小结 341956第六章系统测试 35308846.1测试环境 3558866.2主要功能测试 35204366.3性能测试 38291426.4本章小结 4019894第七章总结与展望 40158897.1总结 40174057.2展望 4017524参考文献 41绪论1.1项目研究背景与意义由于近年疫情影响,全国各地的中小学不得不采用远程的方式开展线上教学;学校也希望考查学生的学习成果。在线考试系统正是迎合这一时代需求而开发的,它意思是在当今疫情的环境下也能让学生在线学习和考试。与传统考试相比较,在线考试系统牵扯到人员组织、考试安排、成本消耗等因素;同时,手工评分等主观因素也影响了考试的公平性。随着网络技术在教育领域的普及,基于现代信息技术的网络在线考试系统显示出越来越多的优势。[1]基于这些情况,为适应当前疫情开发在线考试系统,实现在线化的考试,在线考试是对学生课后或假期学习的考察和加强。在线考试系统充分体现新高考的教育思想和教学理念,能够通过本平台解决新高考改革中遇到的问题,通过该平台能够进行积极的教学交流,激发学生的学习潜能,促进学校教育教学结构的改革,提高教育教学信息化的水平。1.2国内外研究现状目前,中国已经完全进入信息时代。信息技术与教育的融合极大地促进了教育的改革和发展[2]。根据互联网数据,截至2020年6月,中国网民数量达到9.4亿,比2020年3月增加3625万,互联网普及率达到67.0%,比2020年3月提高2.5个百分点[3]。移动终端的出现不仅方便了人们的生活,也为学生提供了便捷的学习方式。国内的在线学习的平台和系统等,涌现出了很多,如这些软件的功能概括性全,拥有不同年龄段、不同科目、不同难度等功能,而且它们针对的学科很广,也不怎么全和细,且目前国内针对性和目的性对中学生的学习科目的软件和系统还是很少的,对于中学生来说,掌握好基础知识对学习帮助是十分重要的,如何很好的学习基础知识是取得一个好成绩的必需前提。在课堂上,学生学习中所存在的问题和疑惑往往不能第一时间去理解和知道答案,就会留着问题想以后去解决,常见积存的问题就越来越多,这不利于中学生的学习。与国外的在线学习的平台和系统的基本功能与国内的情况类似,如国外的Studyblue,它是在线和移动学习的学习工具,可以用来保存、组织各类学习资源,并以小卡片、小测验和学习指南的形式呈现给学生,学生可以随时随地的学习。总之,尽管目前国内和国外的网络测试系统都具有很好的综合性能和功能,但是目前还没有面向所有年龄层、面向高中生的考试测试系统。1.3论文主要研究内容通过对比和比较国内外现有在线考试系统的优缺点,统一系统的根本性分析,系统在当前疫情的特殊情况以及对中学生知识学习针对性学习为目标,开发出一个出题、组卷、答题、批改等的系统。本文主要研究以下几点内容:1.对目前在线化考试系统进行了研究,并对其优势和不足进行了归纳,得出了本系统的主要作用是:线上出题、智能组卷、答题、机器批改等模块;针对目前新冠病毒的严重情况,最后计划利用PC平台进行研发,让同学们能够在目前的新冠病毒的背景下,能够在家中进行学习和应试,充分发挥掌上电脑的作用。2.调查在线考试系统的可行性;使用时序图、序列图、流程图等设计,完成系统的需求设计的基本要求,最后使用前后端分离的系统来开发系统,并且对系统设计与实现的过程进行介绍。3.如何更好地实现在线考试系统的需求功能,并对其核心功能考试发布、考试训练、教师、用户管理等功能进行测试。1.4论文组织结构第一章:引言。这一章结合当前新冠病毒的形势和线上的考试系统的需要,阐述了线上的考试系统的发展,并由此引发了面向线上的考试系统。第二章:相关概念与技术理论综述。本章根据在线考试的需求,详细介绍了开发该系统所使用的技术和知识理论,其中包括SpringBoot、MyBatis、Vue、MySQL等理论技术的介绍,并分析本文所选择这些技术知识的依据。第三章:系统需求分析。本章首先对系统的主要需求进行分析。第四章:系统总体设计。本章以在线考试平台所需的功能,包括学生管理、教师管理、信息管理等,如何构建系统的设计思路、系统的总体设计、数据库表的设计等内容。第五章:系统详细设计与实现。本章对在线考试平台的重要模块进行详细地流程设计、代码设计以及实现效果,其中包括练习训练、学生答题、考试发布的功能。第六章:系统测试。本章主要介绍了测试系统的基本环境,对在线考试系统进行功能测试与分析。第七章:总结与展望。本章总结了目前工作所存在的问题,以及对在线考试系统的实际应用前景的。相关理论与技术理简述2.1B/S架构介绍B/S架构相对比C/S架构,B/S架构仅使用浏览器当作客户端且无需安装就可以完成所有的功能,因为B/S架构把所有的业务功能都在S端(服务端)完成,所以来看使用B/S架构来开发本系统要更强于C/S架构。2.2后端技术介绍2.2.1SpringBoot介绍Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作《ExpertOne-On-OneJ2EEDevelopmentandDesign》。Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但是Spring不仅仅局限于服务器端开发,任何Java应用都能在简单性、可测试性和松耦合性等方面从Spring中获益。2.2.2MyBatis介绍MyBatis是一款优秀的ORM(ObjectRelationalMapping,对象关系映射)框架,它可以通过对象和数据库之间的映射,将程序中的对象自动存储到数据库中。它是Apache提供的一个开源项目,之前的名字叫做iBatis,2010年迁移到了GoogleCode,并且将名字改为我们现在所熟知的MyBatis,又于2013年11月迁移到了Github。2.3前端技术介绍2.3.1Vue.js介绍它是一个轻量级的MVVM管家数据驱动+组件化的前端开发。2.3.2ElementUI介绍ElementUI是基于Vue2.0开发的基础组件库,具有常用的组件,可以自定义全局组件及界面样式,以主打界面美观、简洁、大方的web应用风格,实际应用于各类桌面应用平台、系统上[6]。ElementUI致力于为前后端分离模式打造出一款高效的web前端框架,使开发变得更加高效、视觉效果符合大众审美。2.4MySQL介绍MySQL是一个关系型数据管理系统,可以实现多用户、多线程的功能,支持几乎所有的操作系统[7]。MySQL一般特制完整的MySQLRDBMS,是一个开源的关系型数据库管理系统(RelationalDatabaseManagementSystem),现在属于Oracle公司。随着MySQL功能的不断完善,性能不断提高,又有开源免费的优势,越来越多的企业选择使用MySQL。系统需求分析在线考试系统项目的开发实施过程中,需求分析阶段是核心阶段[8]。这一章针对线上考试的实际需要;从背景入手,对整个系统进行了全面的需求分析;通过对系统业务需求、角色分析、系统功能性需求和系统的非功能性需求进行论述和总结。3.1系统需求概括高中学生需要学习的知识都比较系统和繁杂的知识。在线考试系统,就是根据当今疫情的现状来考虑的,当今中小学生时代所面临的严峻的疫情环境,以大化高中的学生为例,如何在家学习和考试来考察学生学习的学习效果为研究对象,由此可以看出线上考试系统应当具备哪些功能或职能,并对其进行创新发展,其问题有以下几点概括:通过调查发现高中生假期中的学习时间大致在3到4小时左右。长时间的学习容易利于学生的学习状态和心情,这就需要学生在课余时间对知识反复温习;高中生的假期作业练习较多,适当地可以让这些纸质的考试试题转化为线上的考试,这样老师也可以适时地考查和检验学生假期的每天或阶段性的学习成果;传统的假期作业模式基本上是:教师布置作业,学生通过纸质的试卷并书写练习题,在回到学校交作业给教师,这样的方式容易造成教师工作繁忙批改作业不及时等问题;同时,教师假期的时间相对充裕,可以有时间去系统上查看学生的考试情况;中学时代,学生的假期时间充实、课余活动丰富,或许很难的真心的对假期的作业去写和做。所以应该对学生假期中每天的学习时间;对于传统的学习和复习方式,受地域和时间因素影响较大;对于上述的几大要点,开发一款方便的在线考试系统的重要性。3.2系统用户分析系统存在的用户指的是系统的控制者、参与者和消费者,本系统的使用需求分析,可知中小学老师是练习题型、练习试题的主要来源者.中学生为线上考试的主要参与人.后台管理员保障系统的操作人员。所以,线上考试系统的主要角色为管理员、大化高中的教师、大化高中的学生,其角色的职能如下介绍:系统管理员。系统管理员具体来讲通过PC端对系统的功能模块的数据统一管理,如用户管理、教师管理和题库管理等。系统管理员角色用例图内容如图3-1所示。教师。大化高中的老师通过登录系统后端进行数据操作,老师可以对相关的学生信息和考试科目信息进行数据操作。教师角色用例图内容如图3-2所示。学生。大化高中的学生作为系统的主要用户之一,学生在PC端使用系统,学生主要也是通过使用PC后台管理端进行的。进行考试、修改个人信息、查看历史分数、查看成绩等相关操作。学生角色用例图内容如图3-3所示。3.3系统功能性需求分析通过对系统进行清晰的需求分析,可以分析知道系统的重要功能包括系统用户管理模块、试题卷管理模块和成绩管理模块。模块的业务流程如所示下:1.题目仓库添加试题的业务流程。线上考试系统的题库为大化高中的学生参与线上考试的试题的来源,题目仓库添加试题的功能是系统题库更新的功能点。管理员或大化高中的教师进入系统进行编写试卷和答案,上传到系统题库。添加试题模块业务流程图如下图3-1所示。图3-1添加试题功能业务流程图2.在线组卷功能业务流程。在线组卷功能是系统的重点功能之一。管理员或大化高中的教师编写完试题题目后,可以组卷的方式从题库中抽取相应的题目进行组卷。在线组卷模块业务流程图如下图3-2所示。图3-2在线组卷功能业务流程图3.作答功能业务流程。作答功能也是系统的重要功能之一。大化高中的学生登录系统,选择要考试的科目进行考试,答题结束后进行提交,系统给出最后的考试成绩。作答功能业务流程图如下图3-3所示。图3-3作答功能业务流程图3.4系统功能性需求如下提到的在线考试系统功能有:主要为大化高中的学生因为疫情不能在学校学习,而开发的考试系统,如学生在线考试的功能、成绩查看功能和学生信息管理功能等;以下就是系统具体的功能需求如表3-1所示。表3-1系统功能列表系统模块功能点功能描述用户信息管理用户信息管理对系统的用户信息设置相应的权限需求教师管理添加、修改、删除教师的基础信息学生管理添加、修改、删除学生的基础信息科目考试管理考试管理添加相应的考试科目或考试题目题目仓库管理添加题目类型如可以添加选择、判断、填空等题目3.4.1科目考试发布功能需求科目考试发布功能模块的操作者为教师和管理员,管理员或大化高中的教师登录系统之后,开始对所需要的试题进行编写试题,然后上传相应的试题问题到试题库中。科目考试发布模块的用例图如图3-4所示。图3-4科目考试发布模块用例图3.4.2科目考试训练功能需求大化高中的学生是该系统的用户之一,学生登录系统,选择对应的科目考试的功能模块,然后开始答题,答题完毕,等待系统给的分数结果,学生可以通过查看解析来看错题或者不懂的题目,科目考试模块用例图如图3-5所示。图3-5科目考试模块用例图3.5系统非功能性需求本系统的非功能性需求主要涉及界面美观性、系统易用性、安全性、可维护性等[9]。美观性使用的系统要有一定的审美,来满足用户的需求,也可以设计几个主题模块来给用户选择。系统易用性让用户快速的简单上手使用系统和熟悉系统,达到快速使用系统的功能的目的。安全性保护用户的信息不泄露,所以要保护基础数据库的数据信息的安全和系统安全。可维护性要留有维护系统的余地,所以就要求编写者设计和编写代码时要严谨和规范,才能保证以后维护系统更方便和简单。3.6本章小结本章主要描述系统的科目考试发布、科目考试训练、大化高中的教师管理三个模块,并对三个模块的设计进行说明,其中对各功能模块的结构进行用例分析。系统总体设计4.1系统功能结构设计本系统实现的在线考试系统,主要目的对传统的纸质的考试的考试过程中,最重要的无纸化环节提供的在线化[10]。大化高中的在线考试系统的整体功能架构图如图4-1所示。图4-1大化高中的在线考试系统物理架构图本系统的总体设计方案中涉及到的几个部分给出如下详细解释:1.PC管理端PC管理端是与数据库操作是互相影响的,其实现的主要功能包含科目考试管理、学生信息管理、教师管理等,为实现系统的正常运行提供了保障。2.数据库服务器端本系统使用轻便的MySQL数据库服务,为大化高中的在线考试系统的所有数据提供承载数据的容器,保证数据的存储和更新管理,以及保证数据库中的数据完整性与安全性。维护数据库结构的,且实现数据库的并行。4.2系统架构设计软件的总体架构设计相当于是一个工程的总策划与起点,对系统而言,总体架构设计的好坏直接影响并决定着系统的质量[11]。系统架构设计主要是对大化高中的在线考试系统的系统化的了解,通过这个架构图来更好清晰的理解本系统所运用到的技术和技术体系架构,同时也可以对系统可能存在的问题和未来可能需要进一步维护和升级系统有一定的技术支撑和帮助。本在线考试系统的实际开发模式是使用SpringBoot技术结合注解开发和Vue前端开发。前端UI由ElemUI、JavaScript和Jquery的技术搭建起来的,数据交互层由Vue、Vuex和vueRouter构建,数据持久层主要是使用到了Mybatis。可以通过上面的系统的详细的技术分析,可得系统进行总体架构分与设计,系统的架构设计图如下图4-2所示。图4-2系统架构设计图基于大化高中的在线考试系统的功能性需求主要涉及系统性、灵活性、可靠性、经济性。1.系统性从总体考虑出发,系统的代码设计要规范统一,系统数据要合理利用。2.灵活性让系统具有较好的开放性,尽可能减少数据的偶合。3.可靠性有一定的抵御外界干扰的能力和恢复能力,确保能够保护好系统的安全和用户数据信息的安全。4.经济性在满足系统用户的需求的前提下,尽可能的减少开发的成本,不能盲目的追求系统完美,只能一步步的去完善系统,这样就很好控制开发时的成本。4.3系统部署架构设计系统部署架构的结构区分,对系统的设计具体分析,这样清晰的理解系统的主要功能部署架构。对于大化高中的在线考试系统的功能进行需求分析,对该系统的功能结构进行分配,PC端后台数据管理主要是对在线考试系统的必要的业务进行管理。4.3.1PC端部署设计大化高中的在线考试系统的主要功能模块有包括教师管理、学生管理、题库管理等模块,其PC端部署设计的功能模块结构图如图4-3所示。图4-3PC端部署结构图4.4系统数据库设计数据库是系统数据的源点,没有数据库的系统,相当于没有灵魂的人。因此,能合理地设计好数据库,就显得尤为重要,合理的数据库设计能加快数据的存储、读取速度,节约开发时间[13]。以下分别对数据库的概念模型设计以及数据库的表结构设计加以说明。4.4.1概念模型设计数据库概念设计过程需要生成系统中所有信息的数据模型[14]。概念模型设计是能设计出合理的数据库的前提条件,E-R图表示法是一种数据库分析方法。本系统的主要实体包括:老师、学生、管理员等。以下重点介绍系统的发布考试练习、考试练习训练、成绩管理的E-R模型设计。1.考试发布模块E-R模型设计一个大化高中的教师或管理员可以设置添加N个判断题、填空题或选择题,然后N个选择题、判断题或填空题组合成一套考试试题。如下E-R图设计图4-6所示。图4-6发布考试模块E-R图2.考试练习模块E-R模型设计一个学生可以有N个成绩,也可以进行N个答题和产生N个答题的记录,一个成绩只能有一个答题记录,一套试题卷可以有N个答题记录。其E-R图设计如图4-7所示。图4-7考试练习模块E-R图3.学生成绩管理模块E-R模型设计一个大化高中的教师或管理员可以查看N个的成绩记录,但是一个成绩记录只能查看一个学生。其E-R图设计如图4-8所示。图4-8学生成绩管理模块E-R图4.4.2数据库表结构设计考试练习信息表(test_total)。表4-1考试练习信息表(test_total)字段名称字段类型(长度)是否为空备注testID考试练习序号int(9)notnull主键(自动递增)present考情介绍varchar(100)curriculum科目名称varchar(100)paperId考试练习试卷编号varchar(100)examDate考试练习发布时间varchar(100)totalTime考试练习持续时间varchar(100)grade年级varchar(100)term学期varchar(100)fraction总分varchar(100)mold考试类型varchar(100)notice考前须知varchar(100)2.逻辑选择题题库表(select_topic)。表4-2选择题题库表(select_topic)字段名称字段类型(长度)是否为空备注selectID题目编号varchar(100)notnull主键(自动递增)subject所属科目varchar(100)question问题varchar(100)correctA选项Avarchar(100)correctB选项Bvarchar(100)correctC选项Cvarchar(100)correctD选项Dvarchar(100)correct正确答案varchar(100)problem题目解析varchar(100)fraction得分int(100)chapter所属章节varchar(100)difficulty难度级别varchar(100)1表示低、2表示中、3表示较高3.逻辑填空题题库表(pack_topic)。表4-3填空题题库表(pack_topic)字段名称字段类型(长度)是否为空备注packId试题编号varchar(100)notnull主键(数据库设置自动递增)account所属科目varchar(100)question问题varchar(100)correct答案varchar(100)problem题目解析varchar(100)fraction分数int(100)difficulty难度级别varchar(100)1表示低、2表示中、3表示较高chapter所属章节varchar(100)4.逻辑判断题题库表(decide_topic)。表4-4判断题库表(decide_topic)字段名称字段类型(长度)是否为空备注decideId题目编号varchar(100)notnull主键(自动递增)account所属科目varchar(100)question问题varchar(100)correct答案varchar(100)analysis题目解析varchar(100)fraction得分varchar(100)difficulty难度级别varchar(100)1表示低、2表示中、3表示较高chapter所属章节varchar(100)5.考试模拟练习卷信息表(exercise_surface)。表4-5考试模拟练习卷信息表(exercise_surface)字段名称字段类型(长度)是否为空备注exerciseId考试练习试卷编号varchar(100)notnull主键(自动递增)exerciseType题目类型varchar(100)1表示选择题、2表示填空题、3表示判断题exerciseID题目编号varchar(100)examCode练习编号varchar(100)6.成绩表(mark_total)。表4-7成绩表(mark_total)字段名称字段类型(长度)是否为空备注markId成绩编号varchar(100)notnull主键(自动递增)markCode练习编号varchar(100)主键stuId学号varchar(100)notnullaccount科目varchar(100)notnulldate答题日期varchar(100)totalMark练习总分varchar(100)exerciseMark练习成绩varchar(100)4.5本章小结本章主要描述系统的考试发布、练习训练、成绩管理三个模块的实现,并对三个模块的流程、实现、和效果进行一定的分析,其中对各功能模块的结构进行用例分析。系统详细设计与实现5.1概述本段章节主要是详细介绍大化高中的在线考试系统的几大重要模块的从流程设计到编码实现的过程的实现设计过程。5.2在线考试模块设计与实现5.2.1在线考试模块流程设计在线考试的主要操作端为pc端,面向于所有大化高中的学生。在线考试模块功能包含浏览考试科目、查看分数、查看错题解析,在线考试模块流程图如图5-2所示,具体流程分析如下所示:大化高中的学生登录个人账号进入系统,点击选择想要考试练习的科目;开始进行考试按钮,完成作答,提交考试卷;提交的考试卷与系统事先留有的正确答案进行比对,实现机器判卷,给出学生考试科目成绩得分;大化高中的学生登录个人账号进入系统,查看自己的考试成绩。如下图5-2所示:图5-2练习训练功能流程图5.2.2在线考试模块功能实现在线考试是本系统的重要功能模块之一。学生通过PC端实现在线考试,使得学生能合理利用假期时间或疫情在家学习的时间,用来提高学习的效率,且容易保存数据。在线考试模块有浏览考试科目、查看分数、查看错题解析的功能。在线考试模块设计实现步骤如以下类图来介绍编码调动的实现。该模块的相关类图如图5-2所示:图5-2在线考试模块类图可以看出,学生答题结束后涉及到的答题数据的与系统事先留有的正确答案要进行数据比对的功能实现是有点难度的,其中答题数据与系统的正确的数据答案进行比对,来以此达到机器比对的效果,调用correctService接口来完成机器比对的功能:/**学生考试作答的作答数据记录*/publicAdminController(AdminServiceImpladminService){this.adminService=adminService;}@GetMapping("/admins")publicApiResultfindAll(){System.out.println("查询全部");returnApiResultHandler.success(adminService.findAll());}@GetMapping("/admin/{adminID}"){System.out.println("根据ID查找");returnApiResultHandler.success(adminService.findById(adminId));}@PutMapping("/admin/{adminId}"){returnApiResultHandler.success(adminService.update(admin));}@PostMapping("/admin")publicApiResultadd(Adminadmin){returnApiResultHandler.success(adminService.add(admin));}}correct.vue/**练习训练答题*/<!--右边选择答题区--><transitionname="slider-fade"><divclass="right"><divclass="title"><p>{{title}}</p><iclass="iconfonticon-rightauto-right"></i><span>全卷共{{topicCount[0]+topicCount[1]+topicCount[2]}}题<iclass="iconfonticon-time"></i>倒计时:<b>{{time}}</b>分钟</span></div><divclass="content"><pclass="topic"><spanclass="number">{{number}}</span>{{showQuestion}}</p><divv-if="currentType==1"><el-radio-groupv-model="radio[index]"@change="getChangeLabel"><el-radio:label="1">{{showAnswer.answerA}}</el-radio><el-radio:label="2">{{showAnswer.answerB}}</el-radio><el-radio:label="3">{{showAnswer.answerC}}</el-radio><el-radio:label="4">{{showAnswer.answerD}}</el-radio></el-radio-group><divclass="analysis"v-if="isPractice"><ul><li><el-tagtype="success">正确姿势:</el-tag><spanclass="right">{{reduceAnswer.rightAnswer}}</span></li><li><el-tag>题目解析:</el-tag></li><li>{{reduceAnswer.analysis==null?'暂无解析':reduceAnswer.analysis}}</li></ul></div></div>通过详细地设计编写代码,最终实现在线考试模块如图5-3所示,考试练习解析页面如图5-3所示。图5-3考试练习进行界面5.3学生答题模块设计与实现5.3.1学生答题模块流程设计学生答题考试的主要操作端为pc端,面向于所有大化高中的学生。学生答题模块功能包含浏览试卷列表、考试练习、查看分数三大部分,其功能模块流程图如图5-4所示,具体流程分析如下所示:1.学生登录系统,选择考试科目;2.点击开始答题按钮,填写所有答案填写完毕,点击提交;3.系统通过学生提交的考试试卷,通过与数据库中的正确答案对比,进行自动判卷,最后显示练习分数;4.学生得知考试分数后。如下图5-4所示:图5-4学生答题功能流程图5.3.2学生答题模块功能实现学生答题模块是本系统的核心功能。学生通过登录PC端进入到系统进行考试答题。学生答题模块包含浏览考试试卷、开始考试、查看分数的流程。该模块的类图如图5-5所示:图5-5答题记录模块类图可以看出,学生答题过程中涉及到的答题数据的存储功能的实现还是比较复杂的,其中答题数据储存插入到数据库,学生的个人账号与所属的在线答题卷绑定,获取试卷的答题记录,调用scoreService接口来完成答题记录的功能:/**存储学生答题的记录插入到数据库中*/@RestControllerpublicclassMultiQuestionController{@AutowiredprivateMultiQuestionServiceImplmultiQuestionService;Score.vue//计算提交后试题的最后得分<divclass="total"><divclass="look">本次考试成绩</div><divclass="show"><divclass="img1":class="{'img1Transform':imgShow}"><img:src="imgSrc.fail1"alt="哭了"v-if="score<60"><img:src="imgSrc.pass1"alt="过了"v-if="score>=60"></div><divclass="number":class="{'border':isTransition}">:class="{'img2Transform':imgShow}"><img:src="imgSrc.fail2"alt="哭了"v-if="score<60"><img:src="imgSrc.pass2"alt="过了"v-if="score>=60"></div></div><ulclass="time"><liclass="start"><span>开始时间</span><span>{{startTime}}</span></li><liclass="end"><span>结束时间</span><span>{{endTime}}</span></li></ul></div></div>通过详细地设计编写代码,最终实现学生答题页面如图5-3所示,习题解析页面如图5-3所示。图5-3练习答题进行界面5.4发布考试模块设计与实现5.4.1发布考试模块流程设计发布考试模块只有管理员和教师能够发布,面向于大化高中的老师。该模块功能包含考试查询、添加考试两大部分,其功能模块流程图如图5-4所示,具体流程分析如下所示:管理员或大化高中的教师登录系统,浏览考试管理的功能;2.添加相关的考试科目的基本信息,填写完毕,点击立即创建按钮;3.添加考试成功,管理员或教师点击题库管理模块,选择增加题库中的新增的考试,点击在线组卷,填写在线组卷的信息,点击立即组卷按钮;4.发布考试结束。如下图5-7所示:图5-7发布考试功能流程图5.4.2发布考试模块功能实现发布考试功能是在线考试系统的必要的功能模块,该功能模块设计实现步骤如以下类图来完成功能的实现。该模块的相关类图如图5-8所示。图5-8发布考试模块类图可以看出,大化高中的教师发布考试让大化高中的学生可以浏览选择相关的考试科目进行考试,其中发布的考试的数据给学生进行考试的数据内容的实现是一大难点,为了实现考试在线化的功能,调用ExamService接口来完成机器比对的功能:LtemController.java/**添加试题记录,组卷*/publicinterfaceExamManageService{/***不分页查询所有考试信息*/List<ExamManage>findAll();IPage<ExamManage>findAll(Page<ExamManage>page);ExamManagefindById(IntegerexamCode);intdelete(IntegerexamCode);intupdate(ExamManageexammanage);intadd(ExamManageexammanage);ExamManagefindOnlyPaperId();}LtemController.vue//试题添加<template><sectionclass="add"><el-formref="form":model="form"label-width="80px"><el-form-itemlabel="试卷名称"><el-inputv-model="form.source"></el-input></el-form-item><el-form-itemlabel="介绍"><el-inputv-model="form.description"></el-input></el-form-item><el-form-itemlabel="所属学院"><el-inputv-model="form.institute"></el-input></el-form-item></el-form-item><el-form-itemlabel="年级"><el-inputv-model="form.grade"></el-input></el-form-item><el-form-itemlabel="考试日期"><el-col:span="11"><el-date-pickerplaceholder="选择日期"v-model="form.examDate"style="width:100%;"></el-date-picker></el-col></el-form-item><el-form-itemlabel="持续时间"><el-inputv-model="form.totalTime"></el-input></el-form-item><el-form-itemlabel="总分"><el-inputv-model="form.totalScore"></el-input></el-form-item><el-form-itemlabel="考试类型"><el-inputv-model="form.type"></el-input></el-form-item><el-form-itemlabel="考生提示"><el-inputtype="textarea"v-model="form.tips"></el-input></el-form-item><el-form-item><el-buttontype="primary"@click="onSubmit()">立即创建</el-button><el-buttontype="text"@click="cancel()">取消</el-button></el-form-item></el-form></section></template>通过编写代码,最终实现后台系统开发使用,满足了发布考试的功能需求,如图5-3所示。图5-4发布考试进行界面5.5本章小结第五章为系统的详细设计与实现,本章就系统的三个重点功能通过流程图、序列图的设计方式详细推敲,分析功能的流程步骤,最终得出具体的实现代码,得以展现相应功能的界面截图。系统测试当软件开发到一定程度时,要对其自身性能进行测试,从而有效发现软件中存有的缺陷,促使软件测试的作用愈发重要,而且会影响产品自身使用操作以及稳定性[16]。软件测试对系统能否正常使用起着极大的作用,因此对系统进行功能测试是很有必要的。6.1测试环境测试环境是指为了完成软件测试工作所必需的计算机硬件、软件、\t"/item/%E6%B5%8B%E8%AF%95%E7%8E%AF%E5%A2%83/_blank"网络设备、历史数据的总称[17]。面向中学生的在线考试系统包含PC端后台系统测试测试,其测试环境如表6-1所示:表6-1测试环境表名称参数配置PC端后台系统测试环境操作系统Windows10专业版CPU(中央处理器)Intel(R)Celeron(R)CPUN3350@1.10GHz1.10GHzRAM(内存)8GB开发工具IntelliJIDEA2020.1x64、WebStorm2019.3.5x64软件环境jdk1.8.、MySQL5.5.27win64(x86)浏览器GoogleChrome本系统通过PC端进行测试,通过对系统的主要功能:发布考试、练习训练、成绩管理、学生信息管理统一在相应端测试运行。6.2主要功能测试在线考试系统的主要功能模块为:发布练习功能、教师管理功能、成绩管理功能等。为使系统能够正常使用,本节对以上主要功能设计测试用例并进行相应的功能测试,具体设计如下详细介绍。6.2.1发布考试功能测试发布考试模块功能的重点功能为练习组成考试卷与发布考试,为此发布考试功能测试主要对试题组成练习卷、发布考试展开相应的测试。组成考试卷功能提供管理员与教师使用,因此有这两角色对考试卷训练加以测试。操作者在试题组成考试卷界面选择、填写各组卷基本信息,选择随机组卷或手动组卷,测试系统是否能正常组成考试卷。检测考试卷功能的表如6-2所示。表6-2在线组卷测试用例表用例编号Test01测试目的测试试题组成考试卷功能点是否能正常使用测试步骤1.操作者通过正确的方式登录系统并进入系统界面;2.点击考试管理下的添加考试,来到组成考试卷界面;3.操作者选择试卷名称、试题难度,输入各题型数量;4.操作者点击立即组卷按钮。预期结果组卷成功,系统提示:组卷成功。组卷失败:系统提示:该练习与所属课程不匹配,请重新选择;系统提示:题量总和不能超过十题,请重新输入;系统提示:未知异常。实际结果组卷成功。管理员或教师对发布考试功能进行验证测试。操作者模糊搜索相应的练习,点击记录后的发布练习链接,测试发布练习功能能否正常使用。发布练习功能测试如表6-3所示。表6-3发布考试功能测试用例表用例编号Test02测试目的测试考试是否能正常发布测试步骤1.操作者通过正确的方式登录系统并进入系统界面;2.操作者点击考试管理下的添加考试,进入发布考试列表界面;3.输入课程名称,点击查询按钮,系统显示相应的记录信息;4.操作者点击记录后的发布练习链接,系统执行对用操作。预期结果1.考试发布失败,系统提示:未知异常,并刷新练习列表界面;2.考试发布成功:a.跳转至考试列表界面;实际结果考试发布成功,并且发布成功的考试显示于PC端的考试列表中。6.2.2成绩管理功能测试成绩管理模块功能由系统的学生、教师和管理员共同测试,当前模块在PC后台管理可以查看成绩折线图、成绩等级段分布,因此对系统的查看成绩功能加以测试。检测成绩管理功能如表6-所示。查看成绩功能测试用例如表6-所示。表6-6成绩管理功能测试用例表用例编号Test03测试目的测试是否能正常显示各种成绩图表测试步骤1.用户在PC后台管理系统中进入系统主界面;2.用户点击成绩管理下的成绩列表链接,进入成绩列表界面,同时点击记录后的成绩折线图链接,系统显示学生的成绩折线图;3.用户点击成绩列表下的成绩分布图链接,进入成绩列表界面,点击成绩等级段分布图,系统显示分布图界面;4.学生通过账号登录系统,点击我的菜单,进入我的页面,再点击练习考试成绩链接,系统显示学生个人练习考试成绩。期望结果1.查看成绩失败:a.PC端查看成绩折线图、分布图失败,系统提示:未知异常,并返回成绩列表界面;2.查看成绩成功,并显示相应图表界面。预期结果查看成绩成功,显示相应图表界面6.2.3考试练习功能测试考试练习功能的重点功能为学生的答题、系统自动判卷功能,主要由学生通过PC端进行答题操作。学生由考试列表中进入答题界面,解答题目,答题完毕后,提交考试,系统自动判卷,因此学生测试系统练习功能是否能正常使用,练习训练功能的测试用例如表6-4所示。表6-4考试练习功能测试用例用例编号Test04测试目的练习训练功能是否正常测试步骤1.学生输入用户名、密码登录PC端,选择练习科目,进入练习列表,并点击相应的科目练习;2.系统显示练习详情界面,学生点击开始答题按钮,进入答题界面;3.答题完毕,点击对应的提交按钮;4.系统自动批改练习,并显示练习成绩页面,学生可查看成绩或练习解析。预期结果1.练习提交失败,PC端提示:答题失败;2.练习提交成功,PC端提示:答题完毕,并跳转到答题后的成绩界面。实际结果练习提交成功,并跳转到相应的练习成绩界面。6.3性能测试6.3.1人力资源下表列出了所有参与此项目的测试人员:角色资源数量/具体人员测试员蓝乔峰6.3.2测试工作量任务开始时间结束时间总计(天数)总计(人时)计划2021-12-232021-12-231实际2021-12-232021-12-2316.3.3测试内容本次测试主要是对在线考试系统“增加题库

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论