基于jsp的学生信息管理系统的开发与测试剖析.doc

上传人:牧羊曲112 文档编号:3867162 上传时间:2023-03-25 格式:DOC 页数:20 大小:1,006KB
返回 下载 相关 举报
基于jsp的学生信息管理系统的开发与测试剖析.doc_第1页
第1页 / 共20页
基于jsp的学生信息管理系统的开发与测试剖析.doc_第2页
第2页 / 共20页
基于jsp的学生信息管理系统的开发与测试剖析.doc_第3页
第3页 / 共20页
基于jsp的学生信息管理系统的开发与测试剖析.doc_第4页
第4页 / 共20页
基于jsp的学生信息管理系统的开发与测试剖析.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《基于jsp的学生信息管理系统的开发与测试剖析.doc》由会员分享,可在线阅读,更多相关《基于jsp的学生信息管理系统的开发与测试剖析.doc(20页珍藏版)》请在三一办公上搜索。

1、武汉理工大学华夏学院课程设计报告书课程名称: 软件测试综合设计 题 目:基于jsp的学生信息管理系统的开发与测试 系 名: 信息工程系 专业班级: 软件工程1121 姓 名: 学 号: 指导教师: 钱小红 2015 年 9 月 9 日课程设计任务书学生姓名: 王定宏 专业班级: 软件1121 指导教师: 钱小红 工作单位: 信息工程系 设计题目:基于jsp的学生信息管理系统的开发与测试初始条件: 要求有编程基础、数据库基础、界面设计基础、软件测试理论基础要求完成的主要任务 主要任务:选用一种自己熟悉的语言开发一个小型管理系统,要求系统必须实现用户登录模块、主要功能的增、删、改、查。实现后给出测

2、试计划、至少给出两个主要模块的测试用例设计说明书,要求按照设计的测试用例进行测试,并给出测试总结报告。提示:各类文档的格式要按照IEEE标准测试文档模板来写。IEEE标准测试文档模板可以参阅人民邮电出版社佟伟光主编的教材软件测试设计报告撰写格式要求:1设计题目与要求 2 设计思想3系统结构 4 数据结构的说明和模块的算法流程图 5 使用说明书(即用户手册)、运行结果、关键界面截图6 测试计划说明书、测试用例规格说明、测试总结报告7 自我评价与总结8 附录:程序清单,注意加注释(包括关键字、方法、变量等),在每个模块前加注释; 课程设计的步骤及时间进度、场地安排 本课程设计将安排在第一、二周,

3、教育技术中心211。时间进度具体安排如下:11月9日:下发任务、找资料;11月10日:完成系统的分析和设计工作;11月11日11月18日:完成系统开发及测试工作;11月19日11月20日:报告的写作及答辩验收,并将以上工作整理成为课程设计报告,于11月20日下午前提交课程设计报告。时间、场地具体安排见下面表格:9号上午9号下午10号上午10号下午11号上午11号下午12号上午12号下午13号上午13号下午16号上午16号下午17号上午17号下午18号上午18号下午19号上午20号上午现教自习现教自习自习现教现教自习现教自习现教自习现教自习现教自习现教现教设计报告撰写格式要求要求层次清楚、整洁规

4、范、不得相互抄袭,凡正文内容有整段完全相同者一律以抄袭论处。设计报告正文字数不少于0.2万字(不包括附录)。第1级(章)题序和题名用黑体三号字;第2级(目)题序和题名用黑体小四号字;第3级(条)题序和题名用黑体小四号字;正文内容用宋体五号字(英文用新罗马体),多倍行距1.25。报告内容一律使用A4打印纸计算机打印,页码在页下居中标明。必须使用国家公布的规范字。页面设置:上空2.5 cm,下空2.0 cm,左空2.5 cm,右空2.0cm(左装订)。插图图面要整齐、美观,插图应与正文呼应,不能脱节。每幅插图应有图序与图题,图序编号要连续,图序与图题间空一格且要放在插图下方居中处。课程设计考核及评

5、分标准课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。总分按五级记分法记载最后成绩:优秀(10090分),良好(8089分),中等(7079分),及格(6069分),不及格(059分)指 导 教 师 签 字: 钱小红 2015年 9月 11日系 主 任 签 字: 邱珊 2015年 9月 11日目录1设计目的52 开发环境和开发技术52.1开发环境:52.2开发技术53 需求分析54 总体设计64.1 系统功能64.2系统体系结构设计64.3数据库分析设计74.3.1实体属性定义74.3.2数据库逻辑结构设计74.4系统结构E-R图105

6、详细设计与实现105.1数据库的建立和连接105.2页面的设计115.2.1欢迎界面115.2.2登陆界面115.2.3新用户注册界面125.2.4主页面135.2.5更新页面156 系统功能测试156.1白盒测试156.1.1 程序流程图166.1.2 控制流程图166.1.3 程序环路复杂性176.1.4 独立路径集合176.1.5 测试用例186.2黑盒测试187 总结191设计目的本系统是针对学生信息管理进行设计的。主要采用的开发工具是Myeclipse10和oracle数据库。在开发过程中利用面向对象的程序思想和严格按照软件工程的开发过程来进行分析和设计。本系统所要完成以下几个主要功

7、能,其中有学生基本信息管理,实现对学生基本信息进行录入、修改、删除等操作。2 开发环境和开发技术2.1开发环境:Myeclipse10、oracle 11g、tomcat2.2开发技术:本系统采用的是Myeclipse作为前台开发工具,oracle作为后台数据库。学生信息管理系统以java、html的语言作为前台的开发环境,服务器选用tomcat,后台数据库选用oracle数据库,实现了注册,登录,学生管理等。采用了jsp的相关知识,例如:动态网页基础知识、JSP基础、JSP指令和脚本元素、JDBC、JSP处理客户端请求、会话和访问控制等。3 需求分析运用Java Web MVC多层架构技术(

8、JSPServlet+JavaBean)和JDBC数据访问技术设计和开发一个学生信息管理系统,实现注册、登录以及学生信息的浏览、查询、添加、更新、删除等基本功能。具体要求如下:(1)界面简单实用,美观大方。要求使用CSS+DIV进行页面布局和样式控制。具体要求如下:a. 系统首先进入欢迎页面。在欢迎页面中,要有系统名称,学生姓名,学号和班级。从欢迎页面点击链接进行登陆界面。b. 进入登陆界面后的流程自行设计。 (2)所采用的数据库管理系统课自行决定。 (3)系统必须实现注册、登录和信息的查询、添加、修改和删除等基本功能。 (4)信息查询必须实现分页功能。4 总体设计4.1 系统功能本系统主要完

9、成对学信息的管理:添加、修改、删除、查询等方面,系统可以完成对信息的浏览、查询、添加、删除、修改等功能。根据需求分析的结果,将学生信息管理系统分为:注册信息、登录信息、增删信息等几个模块,在此基础上建立各自所需要的数据表,构成整个系统的基本框架。该数据库具有数据维护、查询、输出等功能。具体如下:(1)学生查询功能:将所有信息输出并按学号排列。(2)添加功能:添加学生信息并录入数据库中。(3)修改功能:可以对数据库中的信息进行修改。(4)删除功能:可以对数据库中信息进行删除操作。学生信息管理系统4.2系统体系结构设计用户登录登陆成功注册新用户删除学生信息添加学生信息修改学生信息信息查询4.3数据

10、库分析设计得出数据表的各个关系模式后,需要给出是各数据表结构。考虑系统的兼容性及编写程序的方便性,可将关系模式的属性对应为表字段的英文名。同时,考虑到数据依赖关系和数据完整性,需要指出表的主码和外码,以及字段的值域约束和数据类型。4.3.1实体属性定义用户信息(姓名,密码,性别,邮箱,基本信息)user_name nvarchar2(15), user_password nvarchar2(15), user_sex char(2),user_email varchar2(50),user_basicinfo varchar2(50) 4.3.2数据库逻辑结构设计用户信息表create tab

11、le User_Table(user_name nvarchar2(15) primary key, user_password nvarchar2(15), user_sex char(2),user_email varchar2(50),user_basicinfo varchar2(50) );学生信息表create table Student_Table(student_id number(6) primary key, student_name varchar2(18),student_sex char(2), student_birthday varchar2(10), stude

12、nt_dept varchar2(18), student_major varchar2(18), student_classid varchar2(10);记录修改内容表create table record( content vaechar2(50), rtime timestamp);触发器设计(记录修改数据修改之前的内容)create trigger update_Student_Table_triggerafter updateon Student_Tablefor each rowbegin insert into record values (执行了update操作。执行该操作前

13、的数据为:student_id= | :OLD.student_id| , student_name = | :OLD.student_name | ,student_sex= | :OLD.student_sex | ,student_birthday = | :OLD.student_birthday| ,student_dept = | :OLD.student_dept| ,student_major = | :OLD.student_major| ,student_classid = | :OLD.student_classid,sysdate);end update_Student

14、_Table_trigger;/通过学号查询姓名(函数)create function get_sname(sid number)return varchar2 as sname Student_Table.student_name%type;beginselect student_name into sname from Student_Table where student_id=sid;return sname;end get_sname;/4.4系统结构E-R图性别邮箱密码姓名备注用户学号班级管理姓名系别学生专业性别生日5 详细设计与实现5.1数据库的建立和连接conn / as sy

15、sdba/创建表空间(表名:studentinfo): create tablespace studentinfo datafile f:studentinfo size 100m autoextend on next 5m maxsize unlimited;/创建用户(用户名:zhangsan;密码:123456):create user zhangsan identified by 123456default tablespace studentinfotemporary tablespace tempquota 20m on studentinfo; /为用户授予DBA权限grant

16、DBA to user3;/让用户连接数据库conn zhangsan /123456;5.2页面的设计5.2.1欢迎界面用户进入首先看到的界面,点击跳转到登陆界面。5.2.2登陆界面用户输入用户名和密码进行登陆的界面,通过zhangsan/123456连接oracle数据库并判断用户名密码是否在数据库内。部分代码如下:Connection con = null; final String driverClass = oracle.jdbc.OracleDriver;final String connStr = jdbc:oracle:thin:/localhost:1521/orcl;try

17、 Class.forName(driverClass);System.out.println(数据库驱动程序加载成功!);con = DriverManager.getConnection(connStr,zhangsan,123456); System.out.println(数据库连接成功!);5.2.3新用户注册界面注册新用户的界面,注册时要判断用户名密码是否符合要求以及其他信息是否符合设定的格式。邮箱验证代码如下:function checkEmail() var email = document.register.userEmail.value; var reg2=/w+(-+.w+

18、)*w+(-.w+)*.w+(-.w+)*/; if(reg2.test(email) flag4 = true; document.getElementById(errEmail).style.display = none; else flag4 = false; document.getElementById(errEmail).style.display = block; 5.2.4主页面显示学生信息的界面。要求有更新删除信息功能和添加信息功能。更新代码如下:String studentID = request.getParameter(studentID);String student

19、Name = request.getParameter(studentName);String studentSex = request.getParameter(studentSex);String studentBirthday= request.getParameter(studentBirthday); String studentDept = request.getParameter(studentDept);String studentMajor = request.getParameter(studentMajor);String studentClassID = request

20、.getParameter(studentClassID);StudentDTO student = new StudentDTO(); student.setStudent_id(studentID);student.setStudent_name(studentName);student.setStudent_sex(studentSex);student.setStudent_birthday(studentBirthday);student.setStudent_dept(studentDept);student.setStudent_major(studentMajor);stude

21、nt.setStudent_classid(studentClassID); /定义转发页面String forward = null; / 创建模型对象UserDAO udao = new UserDAO();/调用模型对象的业务方法来判断登录的用户是否有效boolean b = udao.updateStudent(student);HttpSession s = request.getSession();if (b)s.setAttribute(info, 更新成功);forward = information;else s.setAttribute(info, 更新失败);forwar

22、d = main.jsp;5.2.5更新页面对学生信息进行更新的页面6 系统功能测试6.1白盒测试用基本路径测试法测试注册账户信息时判断两次密码是否一致的功能。/判断密码是否一致function checkPwd1()1) /判断密码是否一致,首先要获取到密码的值2) var p = document.register.userPwd.value;3) var p1 = document.register.userPwd1.value;4) if(p = p1)5) 6) alert(密码一致); flag3 = true;7) 8) else9)alert(两次密码不一致); flag3 =

23、 false;10) 11) 16.1.1 程序流程图2411109876536.1.2 控制流程图12345867910116.1.3 程序环路复杂性其环路复杂性为2。6.1.4 独立路径集合根据上面的计算方法,可得出2个独立的路径。V(G)值正好等于该程序的独立路径的条数。1)路径1:1-2-3-4-5-6-7-112)路径2:1-2-3-4-8-9-10-116.1.5 测试用例序号路径输入密码输入确认密码预期结果实际结果1路径1123456123456密码一致密码一致2路径2123456123两次密码不一致两次密码不一致6.2黑盒测试用等价类划分法测试用户名的注册。本系统注册时对用户名

24、长度的要求为2到6位。其有效等价类和无效等价类如图所示。26 无效等价类 有效等价类 无效等价类 用户名长度 2 2=用户名长度 = 6 6用户名长度等价表输入条件有效等价类无效等价类用户名2=用户名长度=6用户名长度6测试用例测试值预期结果实际结果1无效用户名无效用户名123有效用户名有效用户名7 总结这次课程的主要内容是设计一个简单的信息系统。在开发过程中,我认识到:要制作一个独具一格的网站一定方法与技巧是必要的;以前老是觉得自己什么东西都会,什么东西都懂,一到实践应用中,什么技巧也没用上,常因为一点小错误而前功尽弃,这才发现,原来是自己眼高手低了。虽然系统的基本功能都已实现,但还是存在系

25、统不稳定等多个问题尚待解决。这个系统主要是我自己开发的,但也得到了老师和同学的很大帮助。我正在做系统的过程中遇到了很多问题,有的是知识存储不足,有的是考虑不够周全,之所以能够顺利实现基本功功能,离不开老师和同学的大力相助。通过本次系统设计与开发,让我学到了很多,不仅加深了我在大学四年所学的理论知识的理解和对语言开发的各项技术的应用,更让我学到了很多深层次的软件开发技术,事实证明,只靠自己是不能顺利完成一套功能完整的系统的,必须充分利用团队的力量。学校安排了实训,我利用机会给自己巩固知识、加深开发经验,使理论与实践相结合。另外,这次课设也让我明白了学习是一个长时间慢慢积累的过程,我想在以后的工作、生活中都应该不断的学习,努力提高自己的知识与综合素质。设计过程中现场提问(或答辩)记载:1. 插入一条记录的命令是什么?答:insert into 表名 values(值1,值2,.);2.触发器的作用,什么时候用触发器?答:触发器是可以由事件来启动运行的,存在于数据库服务器中的一个过程。它的作用:可以实现一般的约束无法完成的复杂约束,从而实现更为复杂的完整性要求。3.白盒测试中基本路径测试法共有几步?答:1)画出程序控制流图2)计算程序环路复杂性 3)确定独立路径集合4)准备测试用例指导教师评语: 成绩评定: 指导教师(签名): 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号