(毕业论文)基于java聊天室系统的设计与实现_第1页
(毕业论文)基于java聊天室系统的设计与实现_第2页
(毕业论文)基于java聊天室系统的设计与实现_第3页
(毕业论文)基于java聊天室系统的设计与实现_第4页
(毕业论文)基于java聊天室系统的设计与实现_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

1、任务要求根据本学期课程所讲述的图形用户界面、网络编程、java数据库以及hibernate框架等相关知识实现一个小型应用系统。具体要求如下:1. 实现系统所用到的知识必须涵盖本学所讲述的图形用户界面、网络编程以及java数据库。特别地,可以用所学的其他相关知识实现系统的界面部分,可以使用三大框架中的一种框架来实现系统。2. 课程论文的撰写要规范,所包含的主要内容有系统需求分析、相关技术介绍、主要功能与数据库的设计分析,实现部分需要包括实现的效果图以及主要代码,需要包括主要功能的测试。3. 要求学生独立完成系统实现与论文撰写,不能存在抄袭现象,一旦发现,课程论文设计为零分。 java语言高级编程

2、课程论文评分标准序号评分内容分数得分1封面格式统一22目录格式33需求分析部分104系统功能分析与设计105数据库设计(e-r图5分,表5分)106界面实现部分(图5分,主要代码10分)157网络编程部分(图5分,主要代码10分)158数据库部分(图5分,主要代码10分)159系统测试部分810论文总结311论文排版与语言规范612参考文献3总 分基于java的聊天系统的设计与实现摘 要如随着internet技术的发展,人们的日常生活已经离不开网络。未来社会人们的生活和工作将越来越依赖于数字技术的发展,越来越数字化、网络化、电子化、虚拟化。电子商务也随着网络的发展日益和人们的生活贴近。inte

3、rnet的发展历程以及目前的应用状况和发展趋势,可以充分地相信网络技术将极大的改变我们的生活和工作方式,甚至社会的价值观也会发生某种变化。在网络飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。传统的信息交流工具,不能满足人们即时获取信息的要求。因此,网上聊天便成为人们的首选,而一个好的聊天工具是:操作简单、方便、人性化,节省系统资源。为了方便与人即时联系及数据汇报,特构建此聊天系统。本论文通过java的socket实现了一个基于局域网和网络的聊天室程序的开发。本论文详细介绍其设计和实现过程。关键词:聊天室;java;客户机/

4、服务器;socket;目 录1 前 言11.1 系统开发的背景11.2 聊天室的发展12 开发技术与工具介绍32.1 本课题开发环境的选择32.2 本课题开发工具的选择32.3 本课题开发技术的选择43 系统需求分析53.1项目概述53.1.1 产品描述53.1.2 产品功能63.2功能需求63.2.1 用户登录63.2.2 公聊63.2.3 私聊63.2.4 用户列表73.2.5 用户退出74 系统功能分析与设计84.1 目的84.2 运行环境84.3 体系结构概述84.4 功能设计84.4.1 用户登录84.4.2 公聊94.4.3 私聊104.4.4 好友列表104.4.5 用户退出10

5、5 详细设计125.1 配置与通信125.1.1 jdk的安装与配置125.1.2 连接数据库的实现135.1.3 通信135.2 登入155.3 群聊165.4 私聊165.5 用户列表185.6 用户退出195.7 功能逻辑实现195.8 数据库功能设计196 系统测试246.1 系统测试原则246.2 系统测试方法246.3 测试举例256.3.1 测试程序登陆界面256.3.2 测试程序主界面256.3.3 测试程序退出256.4 测试项目256.4.1 单元测试256.4.2 系统测试256.5系统测试总结26结 论27参考文献281 前 言1.1 系统开发的背景 现在是网络时代,网

6、络技术是计算机领域中发展最为迅速的技术之一,它在政治、经济、生活等各个方面发挥着十分重要的作用。随着计算机网络的普及和推广,将会有越来越多的人利用网上资源,享受不断发展和完善的网络服务,以此来提高工作效率和水平。随着我国经济的发展和网络的普及,网络技术也越来越多地被应用于日常工作之中。在程序设计领域,面向对象的编程技术正在逐步代替面向过程的程序设计技术,成为计算机应用设计开发的主流,尤其在网络技术开发中,面向对象的java语言编程和相关的java技术正在以前所未有的速度发展。网上购物、网上银行、远程教学、网络聊天、网络游戏等都开始使用java技术。而且java使平台无惯性的思想成为现实,独立的

7、java程序可以被编译为与平台无关的字节码,这种字节码可以运行在任何拥有java解释器的机器上。真正降低了企业成品和程序员的负担。 随着信息科学的进步与互联网络的发展,虽然通过网络的聊天软件很多,但针对于内部系统的、局域网内的聊天和公司内部的上下级沟通的聊天通讯软件却很少。所以开发一个此类型的即时通讯系统就变得非常有意义了。1.2 聊天室的发展聊天室作为即时通讯的一种,即时通讯(instant messenger,简称im)软件可以说是目前我国上网用户使用率最高的软件,无论是老牌的icq,还是国内用户量第一的腾讯qq,以及微软的msn messenger都是大众关注的焦点,它们能让你迅速的在网

8、上找到你的朋友或工作伙伴,可以实时交谈和互传信息。而且,现在不少im软件还集成了数据交换、语音聊天、网络会议、电子邮件的功能。im软件的历史并不久远,但是它一诞生,就立即收到网民的喜爱,并风靡全球。在它的发展史上,以色列人是功不可没的。正是四位以色列籍的年轻人,在1996年7月成立的mirabilis公司,并于同年11月推出了全世界第一个即时通讯软件icq,取意为“我在找你”“i seek you”,简称icq了。知道现在,icq已经推出了它的2002a版本,在全球即时通讯市场上占有非常重要的地位。目前,国内最为流行的即时通讯软件是oicq(简称qq)。它以良好的中文界面和不断增强的功能形成了

9、一定的qq网络文化。messenger虽出道较晚,但依托微软的强大背景,实力也不可小视。最为windows xp的一部分,messenger整合了操作系统的许多功能,如多种形式的聊天选择、多人的单窗口讨论式交流以及充分的文件与桌面共享功能等。它的令人耳目一新的中文界面和注册方式,连同它强大的功能了,着实吸引了众多的眼球的注视,此外还有许多有特点的im软件。2 开发技术与工具介绍2.1 本课题开发环境的选择在进行开发之前,首先决定的第一个问题就是,选择编程语言开发环境和开发工具,我选用了java作为开发环境来编写该系统,具体选择原因如下:选择java语言开发技术:1、就执行平台而言,必须考虑的问

10、题之一是用户可能使用的操作系统。用户可能使用的是windows linux。java语言具有跨平台性。2、java的swing 组件开发技术可以开发丰富的图形界面,并且swing api类提供了丰富的外部接口和方法,可以方便实现系统功能。3、就项目开发而言,纯粹的面向对象,加上数量巨大的类所提供的方法(函数)库的支持,使得利用java开发各种应用程序,可以说是易如反掌。此外,在程序除错、修改、升级和增加新功能等方面,因其面向对象的特性,使得这些维护也变得非常容易。4、java支持内在的多线程运行,提供分布式的并发机制,运行效率高。5、异常处理,为了使java程式更稳定、更安全,java引入了异

11、常处理机制。能够在程序中产生异常情况的地方,执行相对应的处理,不至于因突发或意外的错误造成执行中断或是死机。通过这种异常处理,不仅能够清晰地掌握整个程序执行的流程,也使得程序的设计更为严谨。6、高性能,java可以在运行时直接将目标代码翻译成机器指令。sun用直接解释器一秒钟内可调用300,000个过程。翻译目标代码的速度与c/c+的性能没什么区别。2.2本课题开发工具的选择ava的开发工具很多,而且各有优缺点,在这里我选用了eclipse作为开发工具,eclipse是一个开放可扩展的集成开发环境(ide)。它不仅可以用于java的开发,通过开发插件,它可以构建其他的开发工具。eclipse是

12、开放源代码的项目,并可以免费下载。支持最新的java标准,并且缩短了开发周期。一直以其友好的集成开发环境在业界受到广泛的赞誉,这也是eclipse一直是广大程序员最喜爱的java开发工具的原因之一。eclipse的可视化集成开发环境包括文本编辑器、工程创建工具、对象浏览器和调试器等。用户可以在集成开发环境中创建工程和打开工程,建立、打开和编辑文件,并可以编译、运行和调试应用程序。可以说在eclipse集成开发环境中开发java程序,快速而且高效。其主要特点如下:1.开放的可扩展的ide2.成功的底层图形界面api3.强大的插件加载功能2.3 本课题开发技术的选择系本课题选择了java sock

13、et技术开发网络聊天室。什么是socket? socket是一种用于表达两台机器之间连接“终端”的软件抽象。对于一个给定的连接,在每台机器上都有一个socket,你可以想象一个虚拟的电缆工作在两台机器之间,“电缆”插在两台机器的socket上。当然,物理硬件和两台机器之间的“电缆”这些连接装置都是未知的,抽象的所有目的就是为了让我们不必了解更多的细节。3 系统需求分析3.1项目概述3.1.1 产品描述我这个聊天室是和许多大型的网络聊天室相比该小聊天室比较简单,但能实现聊天的基本功能,群聊,私聊等,基于时间和技术的原因,很遗憾传送文件的功能尚未实现。本聊天室主要由登录界面、聊天室界面构成。整个设

14、计简洁明了、实用,使用简单。客户端登录界面用户登入公聊私聊聊天界面好友列表端口号图3-1 客户端结构图服务器监听请求接收消息发送消息 图3-2 服务器结构图3.1.2 产品功能本项目具有以下主要功能客户端: 用户登入功能。 群聊功能,实现用户和在线的所有用户聊天方式。 私聊功能,实现用户和在线的其他用户一对一的聊天方式。 获取好友列表功能,把上线的新用户添加到好友列表里。服务端: 可以不断的监听客户端请求 发送消息3.2功能需求3.2.1 用户登入需求描述:用户填写用户名,进入聊天室主界面。执行者:用户正常过程: 向服务端请求连接,并发送登录信息; 服务端处理用户信息; 返回客户端一个响应,弹

15、出聊天室主界面; 更新在线用户的用户列表信息。3.2.2 公聊需求描述:用户在聊天室文本区域输入发言内容,聊天室中的其他在线用户可以正常接受并正确显示(包括上线提醒和下线提醒)。执行者:登入用户正常过程: 客户端用户登入成功后,启动客户端功能线程; 客户端将用户发送的信息打包传送给服务端; 服务端进行数据分析后,并将用户的信息进行正确的处理; 传给处在聊天室的所有在线其他用户并正常显示。3.2.3 私聊需求描述:用户可选择聊天室的在线用户列表中任意一个用户聊天,双方发送的信息对于聊天室的其他用户是不可见的。执行者:私聊用户正常过程: 客户端与服务端建立通讯。 客户端将用户发送的信息打包传送给服

16、务端。 服务端进行数据分析,查找被选中的用户,并将信息传给选中的用户。 选中的用户收到服务器的信息后,正确的显示。特殊需求:私聊得选中用户,不能与自己进行私聊。3.2.4 好友列表需求描述:登录的每一个用户都显示在好友列表里。执行者:客户端正常过程: 把登陆的用户显示在好友列表里。 服务器通知所有用户新用户上线了。 客户端接收到消息,进行消息处理,并正确显示。3.2.5用户退出需求描述:用户在正常情况下退出聊天室。执行者:用户正常过程: 向服务器发送用户退出消息。 服务器进行用户退出的数据处理。 服务器向聊天室其他用户发送用户下线消息。 刷新其他在线用户的用户列表信息。4 系统功能分析与设计4

17、.1 目的该阶段目的在于明确网络聊天室系统的数据结构和软件总体结构,各个软件模块的功能说明,数据结构的细节,系统运行配置与应用方式以及使用的关键技术。4.2 运行环境运行环境见下表。名 称操作系统类型推荐操作系统版本推荐硬件(cpu/ram/hd)数据库客户端windows平台windows 2000以上p4 1.7g/256m/40gmysql服务器windows平台windows 2000以上p4 3.6g/8g/120gmysql表4.14.3 体系结构概述本系统采用c/s的结构设计模式,客户端接收用户的发送的信息到服务器,服务器通过处理转发到另一些客户端。客户端采用图形用户界面,方便与

18、用户交互。服务器端用控制台的方式方便控制操作。 客户端分为用户登录、群聊、私聊、好友列表。用户登录封装在用户登录的界面中,群聊、私聊、用户列表模块封装在聊天的主界面中。服务器端实现消息接收、消息转发等功能。4.4 功能设计4.4.1 用户登录 用户进到登入界面,填写登入用户名,然后根据数据库里面存的用户名和输入的用户名进行对照,如果一样,则可以进行登陆,否则登陆失败,实现用户的登入用户进入登入界面输入用户名提交进入聊天界面图4-1登录图4.4.2 公聊 用户登入成功后进入聊天界面,通过输入聊天内容实现和其他的用户聊天,并可以显示其他用户发送的公聊信息。文本编辑框输入聊天信息用户聊天界面发送消息

19、给所有用户的群聊窗口 图4-2群聊图4.4.3 私聊选择其他用户输入聊天信息发送信息文本编辑框用户聊天界面用户通过选择在线用户列表的其他用户,实现和选中的用户进行私聊方式进行交流,其他用户不可见。点击私聊按钮 图4-3私聊图4.4.4 好友列表用户登陆成功后,经过服务器处理后,通知所有在线的用户有新用户上线了并把新用户显示在好友列表里。用户服务器发送通知消息显示在所有客户端的好友列表里图4-4好友列表图4.4.5 用户退出 在线的用户点击退出按钮,向服务器发送请求,服务器接受请求并处理,并通知所有在线用户该用户退出了,在所有好友列表里移除该用户,退出聊天页面。聊天界面退出服务器接受请求并处理发

20、送有人下线消息退出聊天界面图4-5用户退出图5 详细设计本系统采用c/s设计模式,系统分为客户端和服务器端,客户端包括登入模块,聊天模块。服务器端服务器启动实现模块。5.1 配置与通信环境配置主要包含jdk的安装与配置,配置过程需要本人特别细心,有一点不细心的话都会出现问题,就比如说在配置环境变量的时候,不能忽略任何一个标点,否则就会失败。5.1.1 jdk的安装与配置jdk 是java开发工具包 (java development kit ) 的缩写。它是一种用于构建在 java 平台上发布的应用程序、applet 和组件的开发环境。win2005 server 或 win2005 prof

21、essional 操作系统下,选择安装j2sdk-1_4_1(即jdk)软件,安装步骤如下:(1)双击j2sdk-1_4_1-windows-i586可以开始安装;(2)在安装过程中使用默认配置即可。jdk的默认安装目录为c:jdk;(3) 重新启动计算机;(4) 更新环境变量在系统桌面中;(5) 右击我的电脑图标;(6) 选择属性命令;(7) 弹出系统特性对话框。选择高级选项卡;(8) 单击环境变量按钮;(9) 弹出环境变量对话框;(10)该对话框分为administrator 的用户变量和系统变量两个选项组。接下来在系统变量选项组中操作;(11) 找到path变量后单击编辑按钮;(12)弹

22、出编辑系统变量对话框。在变量值文本框中输入“c:jdkbin”,然后单击确定按钮。同时新建classpath变量;(13)在系统变量选项组中单击新建按钮,在变量名文本框中输入“classpath”,在变量值文本框中输入“.”(点号),然后单击确定按钮。(14)单击应用按钮再单击确定按钮。至此jdk的安装及配置完成。5.1.2 连接数据库的实现打开 控制面板,双击odbc数据源(32位)打开数据源管理,在系统dsn中注册名称为jsp的ms sql数据源。建立数据源后,jsp程序就可以通过jdbc-odbc来调用ms sql数据库。过程如下:首先,从控制面板的管理工具中打开“odbc数据源管理器”

23、,单击“系统dsn”选项卡,单击“添加”按钮。然后从“名称”列表栏中选择mysql,单击“完成”按钮,“建立新的数据源到mysql”对话框,在名称中键入所加数据源的名称,数据源的名称是lyw。在服务器栏中选择本地服务器(local)。在“建立新的数据源到mysql”对话框中单击“下一步”,出现选择mysql确认身份方法的对话框。选择“使用网络登录id的windows nt验证”的方法。在选择身份确认方法对话框中单击“下一步”,选择数据库的对话框,在“改变默认的数据库为”前面加上标记,在下拉列表中选择自己建立数据库名称。在选择数据库对话框中单击“下一步”,出现数据库设置对话框,不用改变默认的设置

24、,单击“完成”按钮,完成数据源的建立。5.1.3 通信 当请求端发送登陆请求时,接收端响应请求,接收端从数据库yonghu数据表查询用户数据,如果用户登录的用户名和数据库查询的用户名匹配,则发送给请求端用户名正确的信息,则说明请求端登陆的用户是合法用户。通信主要代码如下:public static void main(string args) throws socketexception datagramsocket sendscoket=new datagramsocket();datagramsocket recivescoket=new datagramsocket(10001);sen

25、d send=new send(sendscoket);recive recive=new recive(recivescoket);class send implements runnable private datagramsocket ds;send(datagramsocket ds) super();this.ds = ds;overridepublic void run() bufferedreader bufer=new bufferedreader(new inputstreamreader(system.in);string line =null;try while(line

26、=bufer.readline()!=null) byte buf=line.getbytes();datagrampacket dp=new datagrampacket(buf, buf.length, inetaddress.getbyname(122.206.79.103),9999);ds.send(dp); if(886.equals(line) break; catch(ioexception e)/接收端class recive implements runnableprivate datagramsocket ds;recive(datagramsocket ds) supe

27、r();this.ds = ds;overridepublic void run() trywhile (true)byte buf=new byte1024;datagrampacket dp= new datagrampacket(buf, buf.length);ds.receive(dp); string ip= dp.getaddress().gethostaddress();int port=dp.getport();/byte text=dp.getdata();string text =new string(dp.getdata(),0,dp.getlength();syste

28、m.out.println(ip+ +port+:+text);if(text.equals(886)system.out.println(ip);break; catch (ioexception e) 5.2 登入l 功能描述在该登陆页面下,我把端口写死了,只需输入用户名就可以直接登入聊天室主界面。登陆界面窗口如下:图5-1 登陆界面窗口5.3 群聊l 功能描述用户在文本编辑区域输入信息,单击群聊按钮直接把信息发送到群聊显示的区域。并且按照发送来的信息中包含好的显示方式正确显示出信息。群聊界面窗口如图所示:图5-2 群聊界面窗口5.4 私聊l 功能描述用户在文本编辑区域输入信息,选中要私聊

29、的对象,单击私聊按钮直接把信息发送到该用户私聊显示的区域。并且按照发送来的信息中包含好的显示方式正确显示出信息。私聊对象不能选择自己,如果选择自己,会弹出“不能和自己私聊”的提示框,还有不能不选择私聊对象,如果不选择的话,会弹出“请选择私聊对象”的提示框。 私聊界面窗口如图所示:图5-3 私聊界面窗口图5-4 私聊界面窗口图5-5 私聊界面窗口5.5 用户列表l 功能描述 服务器端收到用户上线或下线时发送给它的请求,刷新好友列表。图5-6 用户列表窗口5.6 用户退出l 功能描述 在聊天页面,单击关闭按钮,该用户就退出了并通知其他在线用户该用户退出了。如图所示:图5-7 用户退出界面窗口5.7

30、 功能逻辑实现l 逻辑功能描述 本系统采用数据对象流的形式发送和接受信息。客户端连接服务器成功后就启动一个客户端线程和服务器通信。客户端发送的信息分为:登入消息、群聊消息、私聊消息、用户上下线消息提醒等。服务器端启动一个线程不断的监听客户的请求,当接受到客户请求时就启动一个和该客户端通信的线程。5.8 数据库功能设计 实体间e-r图设计是将分析得到的用户需求抽象为概念模型的过程。即在需求分析的基础上,设计出能够满足用户需求的各种实体以及它们之间的相互关系概念结构设计模型。它是整个数据库设计的关键。概念结构的主要特点是能真实、充分地反映现实世界,易于理解,易于更改,易于向关系、网状、层次等各种数

31、据模型转换。本系统的e-r图比较简单:图5-8 实体e-r图创建一个表并插入一条记录:create table yonghu ( id int(11) not null auto_increment, name varchar(50) character set utf8 default null, primary key (id) insert into yonghu values (1, 冯亚敏);insert into yonghu values (2, 计科一班1号);insert into yonghu values (3, 计科一班2号);insert into yonghu va

32、lues (4, 计科一班3号);本原型系统的数据库设计信息,用户信息表,主要有记录id,用户名。这里将用户名设为主键,也就是作为唯一标识,记录id的数据类型设置为int,不能为空,用户名也不能为空。如表4-1所示:表5-1 用户信息表名称字段名称数据类型主键非空ididintnoyes用户名namevarchar(30)yesyes具体对数据库的操作建立了一个yonghudao类具体代码如下:public class yonghudao /根据名字查询用户public yonghu find(int name) connection conn = null;statement stmt =

33、null;resultset rs = null;try / 获得数据的连接conn = hpu.utils.jdbcutils.getconnection();/ 获得statement对象stmt = conn.createstatement();/ 发送sql语句string sql = select * from xsb where name= + name;rs = stmt.executequery(sql);/ 处理结果集while (rs.next() yonghu stu = new yonghu();stu.setname(rs.getstring(name);return

34、 stu;return null; catch (exception e) e.printstacktrace(); finally jdbcutils.release(rs, stmt, conn);return null;/ 添加用户的操作public boolean insert(student stu) connection conn = null;statement stmt = null;resultset rs = null;try / 获得数据的连接conn = jdbcutils.getconnection();/ 获得statement对象stmt = conn.creat

35、estatement();/ 发送sql语句string sql = insert into xsb(name) + values(+ stu.getname() + );int num = stmt.executeupdate(sql);if (num 0) return true;return false; catch (exception e) e.printstacktrace(); finally jdbcutils.release(rs, stmt, conn);return false;/ 删除用户public boolean delete(int id) connection

36、conn = null;statement stmt = null;resultset rs = null;try / 获得数据的连接conn = jdbcutils.getconnection();/ 获得statement对象stmt = conn.createstatement();/ 发送sql语句string sql = delete from xsb where name= + name;int num = stmt.executeupdate(sql);if (num 0) return true;return false; catch (exception e) e.print

37、stacktrace(); finally jdbcutils.release(rs, stmt, conn);return false;6 系统测试系统测试是系统开发周期中一个十分重要而漫长的阶段。其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程包括系统分析,系统设计和系统实现的最终审查。系统测试的对象不仅仅是源程序,而应是整个软件,它把需求分析,概要设计,详细设计以及程序设计各阶段的开发文档,包括需求规格说明,概要设计说明,详细设计说明以及源程序,都作为测试的对象。6.1 系统测试原则(1)测试工作应避免由原开发软件的个人或小组来承担(2)设计测试方案时,不仅要包括确

38、定的输入数据,而且包括从系统功能出发达到预期的测试结果。(3)测试用例不仅要包括合理,有效的输入数据,还要包括无效的或不合理的输入数据。(4)不仅要检验程序是否做了该做的事,还要检查程序是否同时做了不该做的事。6.2 系统测试方法在本系统的测试过程中,采用了目前常用的测试方法,人工测试和机器测试。人工测试包括个人复审,走查和会审。机器测试包括黑盒和白盒测试。在人工测试中先采用个人复审,在网站程序编写完成以后,自己对源程序各个部分进行详细的检查,然后请经验丰富的老师检验一遍,以便发现问题。经过人工测试后,再进行机器测试。通过在计算机直接运行被测程序来发现程序中错误。系统测试一般有单元测试,组装测

39、试,确认测试和系统测试四个步骤,每一步都是在前一步的基础上进行的(erik van veenendaal,2002)。(1)单元测试单元测试是测试程序模块及其接口与设计说明的要求是否一致,目的是发现程序编写阶段的错误。它以单个程序模块为测试单位。单元测试是采用白盒测试的方法,根据详细设计的描述,从模块的内部结构出发设计测试用例,进行测试。(2)组装测试对每个模块完成了单元测试以后,需要按照设计时做出的层次模块图把它们连接起来,进行组装测试。(3)确认测试经过组装,软件己装配完毕,接下来进行的确认测试是以整个软件作为测试对象,且采用黑盒测试方法。确认测试内容主要包括以下几部分。(4)功能测试:检

40、测软件需求规格说明书的内容是否全部实现。性能测试:检查软件的可移植性,兼容性,错误恢复能力以及可维护性等性能指标,以检测软件功能实现的程序。本系统只要安装了internet information server(iis5.0)就可以使用,对于出错发生,系统可以自动警告。 (5)系统测试系统测试是将信息系统的所有组成部分包括软件,硬件,用户以及环境等综合在一起进行测试,要在系统的实际运行环境现场,在用户的直接参与下进行。包括集成功能测试,可靠性与适应性测试,系统自我保护及恢复能力的测试,安全性测试,强度测试。6.3 测试举例6.3.1 测试程序登陆界面 打开程序后,首先出现的是登录页面,输入用户

41、名,点击登录按钮,。6.3.2 测试程序主界面进入主界面后,主页面会显示群聊信息显示区、私聊信息显示区、文本编辑显示区、在线用户列表区、功能按钮区。用户可以在用户列表中看到目前在线的其他用户,并在群聊信息显示区内看到用户上下线通知和群聊信息,私聊信息显示区内看到私聊的信息。用户可以在文本编辑显示区内输入自己的发送内容,并可以通过单击用户列表名中的用户,进行私聊,发送的信息其他用户不可以见。6.3.3 测试程序退出当单击退出按钮或窗体的关闭时,用户将发送退出信息,离开聊天室,其他用户可以得到系统提示用户下线并刷新用户列表。6.4 测试项目6.4.1 单元测试单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,验证模块接口与设计说明

温馨提示

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

评论

0/150

提交评论