




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安阳师范学院本科学生毕业论文(JSP论坛建设)(安阳师范学院校园论坛)作者 系(院) 软件学院 专业 软件工程(Java方向) 年级 2011级 学号 110907168 指导教师 日期 2015年4月20日 学生诚信承诺书本人郑重承诺:所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写的研究成果,也不包含为获得安阳师范学院或其他教育机构的学位或证书所使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。签名:日期:论文使用授权说明本人完全了解安阳师范学院有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。签名:导师签名:日期:安阳师范学院校园论坛、(安阳师范学院 软件学院, 河南 安阳 455002)摘 要:随着计算机科学技术的高速发展,计算机成了人们日常生活的必需品,从而也带动了一系列与此相关产业,是人们的生活发生了翻天覆地的变化,而网络化的出现也在改变着人们传统的生活方式,包括工作,学习,社交等,网络的出现使地球上居住的陌生人不再像以前一样遥不可及,它拉近了人与人之间的距离,使我们的地球变成了一个村。随着我国的高等教育的普及,大学生的队伍也正在不断壮大,为了方便大学生对学校、老师以及同学之间相互了解相互交流,建设一个互动的校园论坛成为了首当其冲的重要任务。与此同时,这将给学校以及在校生的工作和学习生活带来了极大的便利。众所周知,我们所见的大多数的校园论坛都是用ASP,PHP技术实现的,而基于JSP的论坛较少。SunMicrosystems所开发的JSP以Java为平台,利用Java跨平台型一次编译处处运行的巨大优势,给我们的动态网页设计提供了的更为快捷的设计理念。本系统利用JSP + JavaBeans + mysql实现了“安阳师范学院校园论坛建设:本文对系统的需求分析、总体设计及详细设计进行了详细地阐述,主要实现了以下功能:网站首页、用户注册、用户登录、校园论坛、联系方式、论坛后台管理。最终实现完成了该论坛的设计。关键词:校园论坛;JAVA;JSP;mysql目 录摘 要1第一章 概述71.1项目简介71.2主要开发技术及工具简介7第二章 可行性分析112.1经济可行性112.2技术可行性112.3法律可行性12第三章 需求分析133.1系统需求133.2功能需求133.3系统开发环境需求15第四章 总体设计164.1系统功能模块的化分164.2数据库逻辑结构设计184.3数据流图20第五章 详细设计225.1JavaBeans详细设计225.2论坛首页设计275.3用户注册设计285.4用户登录设计295.5会员中心设计305.6校园论坛设计315.7招生就业模块设计345.8成绩查询设计355.9联系我们模块设计355.10管理登录模块设计365.11管理中心模块设计375.12账户管理模块设计375.13会员管理模块设计375.14版主管理模块设计375.15帖子管理模块设计375.16回帖管理模块设计37第六章系统测试416.1测试指导思想及方案416.2测试阶段426.3部分测试结果43谢 辞45参考文献46一、概述1.1项目简介随着我国的高等教育的普及,大学生队伍的不断壮大,为了方便大学生对本校各项工作的了解以及加深学生、教师与学校之间相互的交流,建设一个规模化的校园论坛成为了首当其冲的重要任务。网络化将给我们的工作和学习和生活带来了极大的便利。以Internet为网络平台实现校园网络各项信息发布、管理、设置等功能。本题目要开发一个校园网门户论坛。包括BBS系统平台、招生就业信息管理平台。后台:包括平台管理、统一认证、资源管理、用户权限管理等1.2主要开发技术及工具简介1.2.1JSP简介Java Server Pages(简称为JSP)是基于Java的动态网页技术,用于创建支持跨硬件平台及跨Web服务器的网页。JSP可与微软的Active Server Pages(简称为ASP)相媲美,相对于ASP来讲,JSP更突出的特点就是利用了Java强大的跨平台性,不论是在Microsoft Windows XP还是在Solaris、Linux下都能正常运行,而且执行效率更高2。1.2.2JavaBeans简介JavaBeans技术是一种基于Java的组件技术,JavaBeans组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据的提取等,是解决代码重用问题的一种策略。以前的组件无法实现真正的代码重用,其主要原因就是它们对于处理平台的依赖和对开发语言的依赖过重。由于Java语言在这些方面所具有的特点和优势,使得基于它的软件JavaBeans组件技术倍受人们的关注。它的任务就是:一次编写,可以在任何地方执行,可以在任何地方重用。JavaBeans组件可以在任何地方重用包括了可以在应用程序、其他组件、文档、Web站点和应用程序构造器工具等多种方案中再利用。为了创建和使用Java软件组件,JavaBeans被实现为一种独立于平台和结构的应用程序接口,它的mysql是一个小型关系型数据库管理系统实现可以忽略内部的结构及细节问题,只需要定义其外部的特征及对外功能就行。其中,属性、方法和事件三种接口可以独立对外进行开发。JavaBeans的实质就是一个.class文件,也可以成为类文件。JavaBeans以binary格式保存,可以保护Java源代码不容易被他人抄袭。1.2.3 mysql简介,开发者为瑞典mysql AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracal收购.对于mysql的前途,没有任何人抱乐观的态度.目前mysql被广泛地应用在Internet上的中小型论坛中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型论坛为了降低论坛总体拥有成本而选择了mysql作为论坛数据库。mysql最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:mSQL并没有他们需要的那么快和灵活。这导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于mSQL而写的第三方代码更容易移植到mysql。mysql这个名字是怎么来的已经不清楚了。基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,mysql AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了mysql这个名字至今依然是个迷,包括开发者在内也不知道。mysql的海豚标志的名字叫“sakila”,它是由mysql AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,mysql自有它的不足之处,如规模小、功能有限(mysql Cluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,mysql提供的功能已经绰绰有余,而且由于mysql是开放源码软件,因此可以大大降低总体拥有成本.1.2.4 Apache Tomcat 5简介Tomcat服务器是一个免费的开放源代码的Web应用服务器,它是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,Tomcat5支持最新的Servlet 2.4和JSP 2.0规范。因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器1。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。 这里的诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。二、可行性分析2.1经济可行性对于安阳师范学院校园论坛建设,在开始阶段通常需要进行系统界面的设计、服务器的搭建、数据库的建设、网络地址的申请等。基于国内软件行业的现状,个人搭建一个web服务器,只要一次性投入34万元人民币即可,日常产生的费用很小,主要是对论坛和数据库的维护费用。由于全智能软件的使用,对于招生学员信息和日常维护都非常简单,实用于机构内部网,也可以租用服务商的虚拟主机,进行使用,费用在1000元内可以实现。系统管理员随时随地可以进行数据的管理和维护,确保论坛的安全和信息随时更新,方便了学生学习和教师交流,事实一个不错的选择。2.2技术可行性对于安阳师范学院校园网界面,无论用户界面还是管理员界面都只是一些JSP页面,连接数据库和中文处理等部分则采用JavaBeans技术。本项目使用了集成开发工具Dreamweaver 用于它们拥有强大的语法提示及自动纠错等功能,因此可以方便的进行Java及JSP开发。mysql是一个全面的、集成化的数据库。利用它可以为用户提供了一个安全、可靠、便捷和高效的平台。目前在网络上开设安阳师范学院校园网,获得网址的方法可以通过注册和交费向域名管理机构申请网络地址的使用权,这种方式需要一定的投资额,但是获得域名较为稳定,且容易记忆12。2.3法律可行性对于安阳师范学院校园网,学校应该本着诚信的原则,对于学校信息和论坛的运行。目前国际上对于电子商务制定了一系列的法律予以规范和保障安阳师范学院校园网的经营者应该严格执行相关的法律法规。此外,在开发过程中使用的部分软件均涉及到了版权的问题,如:mysql,MyEclipse Enterprise Workbench 5.1.0 GA,Dreamweaver等,但由于本系统为学生毕业设计作品,并非用于商业用途,所以不会给对方学校带来经济损失。三、需求分析3.1系统需求安阳师范学院校园论坛建设采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充,维护;系统应基本具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作;普通用户:用户注册、分页查看所有主题文章列表、发表主题文章、回复文章、查看主题文章和回复文章的详细内容、对自己发表或回复的文章进行修改或删除。要想实现以上的论坛功能,需要对所学的技术和专业各个过程从分析、构建到具体实现等等环节上有具体的实践经验,让用户通过对软件的使用更加深入、具体地把握所学的专业知识,在具体的实践过程中理解机构的各个环节和具体的实现过程,不但达到将所学书本知识实用化、具体化的目的,而且使学生在整个试验过程中重新认识、理解所学的相关知识,达到融会贯通的目的。本项目便是在以上所介绍的安阳师范学院校园论坛建设的需求下孕育而生的。3.2功能需求论坛追要实现的功能有前台有首页、校园论坛、联系我们、管理登陆、用户的注册和登录等;后台有账户管理和校园论坛的管理。校园论坛只要功能如下:l 普通用户:用户注册、分页查看所有主题文章列表、发表主题文章、回复文章、查看主题文章和回复文章的详细内容、对自己发表或回复的文章进行修改或删除。l 版主:具有普通用户的所有功能、对本讨论区的所有文章可以修改或删除。l 系统管理员:具有普通用户的所有功能、对所有版面的所有文章可以修改或删除、用户管理功能、包括修改用户的个人信息或删除用户。共需要六个模块来实现:l 用户注册模块:这个模块完成新用户的注册功能,并能对注册信息进行检查。l 用户登录模块:这个模块提供用户的登录界面,并验证用户名和密码,以确定用户身份。l 信息显示模块:这个模块显示论坛的所有讨论区、各讨论区中的所有主题文章、主题文章和回复文章的详细内容。l 信息操作模块:这个模块提供发表主题文章、回复文章、修改文章以及删除文章的功能,并且对不同身份的用户给予不同的操作权限。l 用户管理模块:这个模块能够对用户个人信息进行管理,可以设置某用户为版主或删除某用户。l 数据库模块:这个模块实现对数据库的连接和访问。以上六个模块中,数据库模块是系统中最重要的一个模块,所有JSP页面的编写都是围绕数据库的操作展开的。用户注册模块将用户提交的个人信息存储到数据库之中,通过用户登录模块可以进入信息消失模块、信息操作模块、用户管理模块。模块之间的关系:首先,用户登录的时候肯定用到登录模块,如果用户没有注册,则转向注册模块,如果注册了,在校验完用户信息后,进入信息显示模块;用户在论坛中的操作调用的是信息操作模块。3.3系统开发环境需求硬件开发环境:CPU:Intel Pentium M 1.73GHz内存:512MB硬盘:40G软件开发环境:操作系统:Microsoft Windows XP Professional SP2开发工具包:Java(TM) SE Development Kit 6开发工具:Eclipse 3.2及MyEclipse 或DreamweaverJSP服务器:Apache Tomcat 5.5.23数据库:mysql5.5浏览器:Microsoft Internet Explorer 6.0四、总体设计4.1系统功能模块的化分本项目的系统功能模块可以划分为网站前台模块、网站后台管理模块。系统功能模块图如图4-1所示:安阳师范学院校园网站建设网站前台首页校园论坛联系我们用户注册用户登录管理登录账户管理网站后台会员管理版主管理帖子管理回复管理退出系统图4-1 系统功能模块图4.1.1前台模块的总体设计前台模块可以划分为网站首页、校园论坛、用户注册、用户登录、联系我们、管理登陆等。1首页模块安阳师范学院论坛的首页用户可以浏览学校简介以及学校其他相关的信息。2校园论坛模块论坛交流是提供给教师和学生之间的学习交流平台,注册会员后,可以发帖,回帖等。校园论坛主要有版主申请、新生区、老生区、毕业生区版主交流区。3联系我们模块主要是显示学校的联系方式地址信息等。4管理登录模块管理员登录页面实现管理员登录验证的功能,验证成功可以进入后台管理中心。4.1.2后台管理模块的总体设计后台管理模块可以划分为管理员账户管理模块、会员管理模块、版主管理模块、帖子管理模块、回复管理模块。1账户管理模块只有管理员才可以登录到管理员界面进行账户管理。可以修改管理密码。2会员管理模块管理员可以管理会员信息,具有信息的查看浏览和删除。3版主管理模块管理员可以管理论坛的版主信息,版主的授权等操作。4帖子管理模块管理员可以查看和管理帖子信息,删除帖子信息等。5帖子回复管理模块管理员可以查看帖子回复信息、删除回复等功能。4.2数据库逻辑结构设计本项目数据库schoolnet使用了6个表,数据库的详细设计如下。各个表的逻辑结构如下:表Admin为管理员信息表,它用来存储管理员的用户名和密码,该表的结构如表4-1所示。表4-1 表Admin的结构表列名数据类型长度主键允许空描述idint4是否IDnamevarchar50否是用户名pwdvarchar50否是密码addtimevarchar50否是添加时间flagvarchar50否是级别timesint4否是登录次数表huihuzhiti为回复主题信息表,它用来存储回复的主题信息,该表的结构如表4-2所示。表4-2 表huihuzhiti的结构表列名数据类型长度主键允许空描述idvarchar50是否编号contenttext否否内容sendervarchar50否否回复人sendtimevarchar50否否时间zhutiidvarchar50否否主题编号表login为用户信息表,它用来存储用户注册信息,该表的结构如表4-3所示。表4-3 表login的结构表列名数据类型长度主键允许空描述idint4是否用户IDnamevarchar50否否用户名pwdvarchar40否否密码sexvarchar16否否性别ageint4否否年龄worksvarchar80否否职业timesint4否否次数flagvarchar50否否级别picvarchar50否否头像表zhuti为主题表,它用来存储主题信息的表,该表的结构如表4-4所示。表4-4 表zhuti的结构表列名数据类型长度主键允许空描述idvarchar50否否编号contentvarchar50否否内容sendervarchar50否否发帖人sendtimevarchar50否否时间visitvarchar50否否访问titlevarchar50否否标题表zhaosheng为招生信息表,它用来存储招生信息,该表的结构如表4-5所示。表4-5 表zhaosheng的结构表列名数据类型长度主键允许空描述idinc16否否编号titlevarchar50否否名称contentvarchar50否否内容sendervarchar50否否发布人sendtimevarchar50否否时间typevarchar50否否类型表fenshu为分数信息表,它用来存储分数信息,该表的结构如表4-6所示。表4-6 表fenshu的结构表列名数据类型长度主键允许空描述idint4是否IDnamevarchar20否否姓名kemuvarchar50否否科目fenshuint4否否分数adddervarchar50否否发布人addtimetext16否否时间4.3数据流图经过对系统功能模块的分析,我们很容易画出数据流图,如图4-2所示:用户注册登录浏览发帖退出发帖信息论坛信息管理入口回帖管理账户管理招生管理成绩管理会员管理帖子管理版主管理图4-2 数据流图五、详细设计5.1JavaBeans详细设计由于本项目的许多文件需要访问数据库,利用JavaBeans可以实现与后台数据库管理系统mysql之间进行数据传输。本系统使用了三个JavaBeans文件,分别为:DBO.java,LoginBean.java,zhuTI.java, ZhuTiPageBean.java。5.1.1DBO.java文件本文件用于连接数据库,实现数据库查询、删除及更新操作。本项目采用JDBC直接连接数据库3,数据库名称为schoolnet,用户名为“root”,密码为123456。方法public Condb()主要用于载入驱动程序,方法public ResultSet executeQuery(String sql)主要用于进行数据库查询操作,方法public int executeUpdate(String sql)主要用于进行数据库更新或删除操作,方法public void close()主要用于关闭连接。关键代码如下:public void open() try Class.forName(org.gjt.mm.mysql.Driver); conn = DriverManager.getConnection(jdbc:mysql:/localhost/schoolnet?user=root&password=123456);stmt=conn.createStatement();System.out.println(打开数据库连接); catch (Exception ex) System.err.println(打开数据库时出错: + ex.getMessage();/*关闭数据库,将连接返还给连接池*/public void close() try /connMgr.freeConnection(java, conn);conn.close();System.out.println (释放连接); catch (SQLException ex) System.err.println(返还连接池出错: + ex.getMessage();/*执行查询*/public ResultSet executeQuery(String sql) throws SQLExceptionResultSet rs = null;rs = stmt.executeQuery(sql);System.out.println (执行查询);return rs;/*执行增删改*/public int executeUpdate(String sql) throws SQLExceptionint ret = 0;ret = stmt.executeUpdate(sql);System.out.println (执行增删改);return ret;/*将SQL语句加入到批处理*/public void addBatch(String sql) throws SQLException stmt.addBatch(sql);/*执行批处理*/public int executeBatch() throws SQLException boolean isAuto=conn.getAutoCommit();conn.setAutoCommit(false);int updateCounts = stmt.executeBatch();/mit();/conn.setAutoCommit(isAuto);/conn.setAutoCommit(true);return updateCounts;public boolean getAutoCommit() throws SQLExceptionreturn conn.getAutoCommit();public void setAutoCommit(boolean auto) throws SQLException conn.setAutoCommit(auto);public void commit() throws SQLException mit();/this.close();public void rollBack() throws SQLException conn.rollback();/this.close();5.1.2 LoginBean.java文件是用户登录处理的javabean文件,使用request对象获取客户提交的中文字符时,如果不进行处理,将会出现乱码。本文件用于进行字符串的中文处理,如果字符串为空,则将其转化成空字符串,如果字符串不为空,将获得的字符串使用iso-8859-1进行编码,并将编码存放到一个字符数组中,然后将此数组转化为字符串对象6。关键代码如下:public String userLoginFlag(String name,String pwd)String sql=select flag from login where name=+name+ and pwd=+pwd+;DBO dbo=new DBO();dbo.open();tryrs=dbo.executeQuery(sql);rs.next();return rs.getString(1);catch(Exception e)e.printStackTrace();return null;finallydbo.close();public int adminLogin(String name,String pwd,String jibie)String sql=select times from admin where name=+name+ and pwd=+pwd+ and flag=+jibie+;DBO dbo=new DBO();dbo.open();tryrs=dbo.executeQuery(sql);if(rs.next()int i=rs.getInt(1);i+=1;dbo.executeUpdate(update admin set times=+i+ where name=+name+);return this.SUCCESS;elsereturn this.DATABASE_ERROR;catch(Exception e)e.printStackTrace();return this.DATABASE_ERROR;finallydbo.close();5.2论坛首页模块设计安阳师范学院论坛首页主要有网站的logo,导航、用户登录和注册还有学校简介信息,还有站内统计、友情链接和版权信息。首页模块运行效果如图5-1所示:图5-1 论坛首页图5.3用户注册设计论坛用户注册功能,不是论坛会员的用户都可以先注册成为本论坛的会员,会员可以进入校园论坛。效果如图5-2所示。图5-2 用户注册图输入用户名popo和其他全部信息,提交系统如下:图5-3 注册成功图5.4会员登录模块设计会员注册完后可以登录本论坛,运行效果如图5-4所示:图5-4 会员登录图登录成功如下:图5-5 登录成功图5.5会员中心模块设计登录后,可以进入入中心具有会员信息的修改功能。其运行效果如图5-6所示:图5-6 会员中心图修改会员资料成功信息如下:图5-7 修改资料成功图5.6校园论坛设计学生可以通过论坛进行学习讨论,和交流,有发帖和回帖,具有申请版主区、新生区、老生区、毕业生区、版主交流区论坛模块运行效果如图5-8所示:图5-8 论坛首页图进入新生专区,如图5-9所示:图5-9 新生专区图进入帖子的主题:图5-10 帖子主题图回复帖子如下:图5-11 回帖图5.7招生就业模块设计招生就业信息的显示,会员登录后可以查看招生就业的相关信息下图5-12所示:图5-12 招生就业图5.8成绩查询模块详设计用户登录后可以查询成绩,其运行效果如图5-13所示:图5-13 管理登录图5.9联系我们设计联系我们页面运行如下。图5-14所示:图5-14 联系我们图5.10管理登录模块设计管理登录页面运行如下。运行效果如图5-15所示:图5-15 管理登录图5.11管理中心设计管理员登陆后就进入了管理中心。页面运行效果如图5-16所示:图5-16 管理中心图5.12账户管理模块设计管理员账户管理页面主要有查看管理员账户信息、修改密码。运行效果如图5-17所示:图5-17 账户管理图点击修改密码按钮页面如下5-18图5-18 修改管理密码图5.13会员管理模块设计管理员可以管理会员信息,删除会员信息,具体运行如下:图5-19 会员管理图5.14版主管理设计管理员具有版主的授权和管理等,运行如下图:图5-20 版主管理图5.15帖子管理设计帖子管理主要是管理论坛所有用户发的贴信息,具有信息的查看和删除功能,运行如下:图5-21 帖子管理图5.16回帖管理设计回帖管理,管理员可以管理回帖信息,具有信息的插卡可能,浏览,删除信息等功能。图5-22 回帖管理图六、系统测试在“安阳师范学院校园论坛建设”完毕到投入使用之前,需要进行一系列系统集成和确认测试。软件测试的根本目的应该是找出软件中存在的漏洞和问题,而开发人员往往不容易找出自己的程序中存在的漏洞和问题,所以从理论上讲,系统的测试工作应该由专业测试人员进行。但鉴于本系统为本科毕业设计作品,所以暂时由开发人员进行测试。6.1测试指导思想及方案6.1.1测试指导思想针对本系统测试人员是开发者本人这一特点,本系统测试工作的指导思想以白盒测试方法为主,局部辅以黑盒测试方法。白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。黑盒测试方法是在已知系统结构的前提下,通过来测试系统每个功能是否都能正常运行并达到预期结果。在测试时将程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在接口进行测试。6.1.2测试方案从软件的生存周期看,测试往往指对程序的测试,这样做的优点是被测对象明确,测试的可操作性相对较强。但是,由于测试的依据是规格说明书、设计文档和使用说明书,如果设计有错误,测试的质量就难以保证。即使测试后发现是设计的错误,这时修改的代价是相当昂贵的。因此,较理想的做法应该是对软件的开发过程,按软件工程各阶段形成的结果,分别进行严格的审查。为了确保软件的质量,对测试过程应进行严格的管理。虽然测试是在实现且经验证后进行的,实际上测试的准备工作在分析和设计阶段就开始了。6.2测试阶段为了保证测试的质量,将测试过程进行划分,针对“安阳师范学院校园论坛的设计与开发”项目的特点,将测试过程划分为代码审查、单元测试、集成测试和验收测试四个阶段。6.2.1代码审查一般的软件测试应该进行代码会审。代码会审是由一组人通过阅读、讨论和争议对程序进行静态分析的过程。针对本系统的开发特点,开发者本人再一次对所编写代码进行审查,并将其讲解给周围同学。实践证明,当再一次进行阅读和讲解时,确实可以发现许多自己原来没有发现的错误。6.2.2单元测试单元测试集中在检查本系统设计的最小单位(模块)上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。由于模块规模小、功能单一、逻辑简单,加之测试人员就是系统的开发人员,对于该模块的I/O条件和模块的逻辑结构都非常清楚,可以采用采用结构测试(白盒法)的用例,尽可能达到彻底测试,然后辅之以功能测试(黑盒法)的用例,使之对任何合理和不合理的输入都能鉴别和响应。高可靠性的模块是组成可靠系统的坚实基础。经过单元测试,发现不少模块存在着错误并已经完成更正。6.2.3集成测试集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如用户资料数据穿过接口时可能丢失、一个模块与另一个模块可能有由于疏忽的问题而造成有害影响、把子功能组合起来可能不产生预期的主功能、个别看起来是可以接受的误差可能积累到不能接受的程度、全程数据结构可能有错误等。集成测试的结果很正常,并不存在一些严重问题。6.2.4验收测试验收测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所期待的那样。经过上述的测试过程对软件进行测试后,软件基本满足开发的要求,测试宣告结束,经验收后,软件可投入使用。6.3部分测试结果6.3.1数据库连接测试在系统的整个开发过程中,最容易碰到的难题是数据库连接。在JavaBeans中连接数据库注意的一些事项有:1如果使用的操作系统是Microsoft Windows XP,在安装完mysql5.5后必须继续
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 手机微课程培训
- 中学社团工作总结
- 幼儿期末知识汇报
- 行政专员年度工作总结数据汇报
- 消防大队安全培训总结课件
- 越剧唱腔课件
- 赵州桥等课件
- 走进房间课件
- 消费保权益课件
- 质量安全技术培训心得课件
- 半导体器件专用设备零部件制造项目可行性研究报告
- 2025年中国铁路总公司校招笔试备考手册
- 2025社会工作员考试(社会工作基础知识)综合能力测试题及答案
- 沥青混凝土面层和沥青碎砾石面层分项工程质量检验评定表新城
- 2025年肇庆市怀集县卫生事业单位招聘考试笔试试卷【附答案】
- 2025年烟草专卖行业招聘面试技巧与模拟题解答
- 灭火器年度检测维修标准
- 书桌劳动课件
- 2025年福建省综合性评标专家库评标专家考试历年参考题库含答案详解(5套)
- 供油船管理办法
- 2026届福建省泉州市泉州实验中学中考冲刺卷英语试题含答案
评论
0/150
提交评论