2022年音乐网站设计与实现 .pdf

上传人:H****o 文档编号:34230551 上传时间:2022-08-15 格式:PDF 页数:29 大小:1.36MB
返回 下载 相关 举报
2022年音乐网站设计与实现 .pdf_第1页
第1页 / 共29页
2022年音乐网站设计与实现 .pdf_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《2022年音乐网站设计与实现 .pdf》由会员分享,可在线阅读,更多相关《2022年音乐网站设计与实现 .pdf(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、I 目录第 1 章 绪论 . 11.1 选题背景 . 11.2 编写目的 . 11.3 编写意义 . 1第 2 章 需求分析 . 22.1 功能需求描述 . 22.2 可行性分析 . 22.3 统性能需求描述 . 2第 3 章 总体设计 . 33.1 功能框图 . 33.2 数据字典 . 7第 4 章 页面设计 . 114.1 最爱音乐网前台设计 . 114.2 最爱音乐网后台设计 . 12第 5 章 编码实现 . 145.1 B/S模式 . 145.2 C# 语言 . 145.3 SQL Server 数据库 . 155.4 ASP.NET 技术. 165.5 功能实现 . 17第 6 章

2、软件部署及测试分析 . 236.1 软件配置 . 236.2 测试分析 . 23总结 . 27致谢 . 错误!未定义书签。参考文献 . 28名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 29 页 - - - - - - - - - 第 1 章 绪论1.1 选题背景随着 Internet网正在向全世界各大洲延伸和扩散,Internet是一个国际性的通信网络集合体 , 它集现代通信技术和现代计算机技术于一体, 是计算机之间进行国际信息交流和实现资源共享的良好手段。Inter

3、net也是人类历史发展中的一个伟大的里程碑,它是未来信息高速公路的雏形,人类正由此进入一个前所未有的信息化社会。 人们用各种名称来称呼Internet, 如国际互联网络、因特网、交互网络、网际网等等,已经成为世界上覆盖面最广、规模最大、信息资源最丰富的计算机信息网络。音乐网站目前最常见的音乐发烧友网站行业呈现出的旺盛生命力和巨大的市场潜力。 音乐网站信息系统采用了/开发框架, 先进的管理构思, 完善的业务管理功能,整个产品在管理功能、易用性、实用性、数据容量、数据安全性、网络稳定性方面都有了很大的提高1.2 编写目的研究网站的开发技术, 重点是 IIS, HTML ,ASP.Net 。开发一个

4、音乐欣赏网站。该网站使用 SQL Server 保存数据,用 ASP.Net设计动态网页。1.3 编写意义计算机和计算机网络的飞速发展,人们对计算机网络的依赖是越来越大。人们在网上聊天交友,在网上请教问题,查阅资料, 还在网上玩游戏。 除此之外,人们还会在网上进行商务交易、下载信息,有着众多的使用者。而我想设计一个全新的音乐综合网站, 这个网站有别于其他音乐网站的常规设计,将给人一种全新的感觉,使之浏览,搜索音乐更加方便和快捷。这也就是毕业设计的编写意义。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -

5、- - - - 第 2 页,共 29 页 - - - - - - - - - 第 2 章 需求分析2.1 功能需求描述音乐专辑,音乐动向,音乐故事,音乐留言。音乐专辑: 是本网站功能最强的网页。 介绍了音乐的专辑。 专辑是按专辑类别分页,点击某个人的专辑,连接到详细专辑页面。音乐动向:按歌手分类,显示歌手的最新动向。如最近的行期安排。音乐故事:按歌手分类,显示歌手的个人介绍。如身高,家人等信息。音乐留言:给本网站留言。可以是对网站的评价,意见等您想说的话。专辑增加与维护, 歌曲类别增加与维护, 歌曲增加与维护, 音乐动向增加与维护,音乐故事增加与维护,留言版维护。2.2 可行性分析技术可行性:

6、使用 ASP.NET ,SQL Server, 合理设计技术方案 , 并与其他音乐网站进行比选和评价。经济可行性:本网站可进行网上销售,卖家可以购买唱片,图片等与音乐有关的商品。有效配置经济资源、增加供应、创造就业、改善环境、提高人民生活等方面的效益。社会可行性:本网站对社会完全没有不良影响。2.3 统性能需求描述开发环境: ASP.NET 2005,SQL Server 2000 运行环境: ASP.NET 2005 软件硬件配置要求: Microsoft Windows XP Home Edition AMD Turion(tm) 64*2 1.81 GHz,960MB NVIDIA Ge

7、Force Go 6150 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 29 页 - - - - - - - - - 第 3 章 总体设计3.1 功能框图3.1.1 功能框图最爱音乐网注册登录音乐专辑音乐动向音乐故事音乐留言这是本网站总体的功能框图。网站的名称是最爱音乐网,它可以分为六大块功能,分别为:注册、登录、音乐专辑、音乐动向、音乐故事、音乐留言。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名

8、师精心整理 - - - - - - - 第 4 页,共 29 页 - - - - - - - - - 3.1.2 注册功能说明注册新用户注册管理员注册图 3-1 注册功能是新用户的注册。注册用户名时需要调用两次校验一次是客户端的非空验证,还有一次是服务器端的用户名是否存在的数据库检索。注册成功时自动跳转到登录界面。3.1.3. 登录功能说明登录普通用户登录管理员登录图 3-2 登录功能是登录。在用户名和密码都正确的情况下可以登录。一种是普通用户登录:进入主界面,可以浏览本网站。另一种是管理员登录:进入网站维护界面,可以对网站进行维护。名师资料总结 - - -精品资料欢迎下载 - - - - -

9、 - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 29 页 - - - - - - - - - 3.1.4 音乐专辑功能说明音乐专辑专辑类别专辑详细信息专辑列表图 3-3 音乐专辑功能是浏览音乐专辑。普通用户进入后可以根据专辑的类别浏览专辑列表。专辑类别分为流行歌曲、日韩歌曲、欧美歌曲、儿童歌曲等。点击专辑列表可以进入这个专辑的详细信息。详细信息包括专辑名称、歌手名称、发行日期、专辑介绍专辑歌曲列表等信息。点击歌曲可以免费下载歌曲。本网站共收集上百种专辑供用户随意浏览与下载。3.1.5 音乐动向功能说明音乐动向动向列表动向详细信息图

10、 3-4 音乐动向功能是浏览音乐动向。 动向列表是按歌手排列的。 点击进入歌手的最新动向,最新动向包括歌手的最新行程安排等信息。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 29 页 - - - - - - - - - 3.1.6 音乐故事功能说明音乐故事故事列表故事详细信息图 3-5 音乐故事功能是浏览音乐故事。 故事列表是按歌手排列的。 点击进入歌手的个人故事,个人故事包括歌手的个人介绍和故事。个人介绍:出生地、生日、身高等信息。故事:个人的经历、专辑、唱片的介绍等

11、信息。3.1.7 音乐留言功能说明音乐留言留言标题留言者留言时间留言内容图 3-6 音乐留言功能是发表留言。 普通用户进入音乐留言界面后可以随意对本网站进行留言。留言可以是对本网站的建议、评论,还可以是对自己喜欢的歌手,专辑发表评论等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 29 页 - - - - - - - - - 3.2 数据字典表 31 歌曲表表名Music 用途用于输入音乐详细信息中文字段名英文字段名类型长度备注歌曲编号M_Id 数值主键歌曲名称M_Na

12、me 字符10 歌曲歌手编号M_SingerId 数值歌曲歌手名称M_SingerName 字符10 歌曲类型编号M_ClassId 数值歌曲类型名称M_ClassName 字符10 歌曲专辑编号M_AlbumId 数值歌曲专辑名称M_AlbumName 字符10 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 29 页 - - - - - - - - - 表 32 专辑表表名Album 用途用 于输 入专 辑 详细信息中文字段名英文字段名类型长度备注专辑编号A_Id 数

13、值主键专辑名称A_Name 字符20 专辑歌手编号A_SingerId 数值专辑歌手名称A_SingerName 字符10 专辑类型编号A_ClassId 数值专辑类型名称A_ClassName 字符10 发行日期A_Date 日期发行公司A_Company 字符20 专辑语言A_Language 字符10 专辑介绍A_Intro 字符1000 专辑图片A_Pic 字符50 表 33 音乐动向表表名音乐动向用途用于输入 音乐动向详细信息中文字段名英文字段名类型长度备注动向编号P_Id 数值主键动向图片P_Pic 字符50 音乐动向P_Pulse 字符1000 动向名称P_Name 字符50 名

14、师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 29 页 - - - - - - - - - 表 34 音乐故事表表名音乐故事用途用于输入 音乐故事详细信息中文字段名英文字段名类型长度备注故事编号S_Id 数值主键故事图片S_Pic 字符50 音乐故事S_Pulse 字符1000 故事名称S_Name 字符50 故事介绍S_Intro 字符500 表 35 歌曲类别表表名歌曲类别用途用于输入 歌曲类别详细信息中文字段名英文字段名类型长度备注类别编号ClassId 数值主键类

15、别名称ClassName 字符10 表 36 留言表表名留言表用途用于输入 留言详细信息中文字段名英文字段名类型长度备注时间M_Time 字符100 主键标题M_Title 字符100 名称M_Name 字符100 留言M_News 字符1000 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 29 页 - - - - - - - - - 表 37 注册表表名注册用途用于输入 注册详细信息中文字段名英文字段名类型长度备注用户编号UserID 十进制10 主键用户名Use

16、rName 字符30 密码UserPwd 字符20 邮箱Email 字符50 性别UserSex 字符2 生日Birthday 字符20 身份证IdentityCard 字符18 自我介绍ZiWoJieShao 字符100 用户类别Type 字符10 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 29 页 - - - - - - - - - 第 4 章 页面设计4.1 最爱音乐网前台设计图 41 音乐专辑界面图 42 音乐专辑界面名师资料总结 - - -精品资料欢迎下

17、载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 29 页 - - - - - - - - - 图 43 登录界面4.2 最爱音乐网后台设计图 44 维护界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 29 页 - - - - - - - - - 图 45 专辑维护界面名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -

18、名师精心整理 - - - - - - - 第 14 页,共 29 页 - - - - - - - - - 第 5 章 编码实现本网站在模式上采用B/S, 语言运用( C# ), 利用数据库 (SQL Server), 在技术上以 ASP.NET 为主导 , 充分运用在学校所学的各方面知识。5.1 B/S 模式B/S 是 Brower/Server的缩写,客户机上只要安装一个浏览器(Browser) ,如 Netscape Navigator或 Internet Explorer ,服务器安装 Oracle 、Sybase、Informix或 SQL Server 等数据库。浏览器通过 eb S

19、erver 同数据库进行数据交互。(1) B/S 模式是一种三层结构的系统。第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如 Netscape Navigator ,微软公司的 IE 等。浏览器将 HTML 代码转化成图文并茂的网页。网页还具备一定的交互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。第二层 Web 服务器将启动相应的进程来响应这一请求, 并动态生成一串HTML 代码,其中嵌入处理的结果, 返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处

20、理工作。第三层数据库服务器的任务类似于C/S 模式,负责协调不同的Web服务器发出的 SQ请求,管理数据库。(2) B/S 最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。5.2 C#语言C# 是 Microsoft在推出 .NET Framework 的第 1 版时提供的一种全新语言。它是为生成运行在 .NET Framework 上的、广泛的

21、企业级应用程序而设计名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 29 页 - - - - - - - - - 的。C# 从 Microsoft C 和 Microsoft C+ 演变而来,它是一种简单、现代、类型安全和面向对象的语言。C# 代码被作为托管代码编译,这意味着它能够从公共语言运行库的服务中受益。这些服务包括:语言互操作性、垃圾回收、增强的安全性以及改进的版本支持。C# 的快速流行,使之成为使用.NET的 Windows和 Web 开发人员无可争议的语言选

22、择。 他们喜欢 C# 的一个原因是其派生于C/C+的简洁语法,这种语法简化了以前困扰一些程序员的问题。尽管做了这些简化,但 C# 仍保持了 C+ 原来的功能, 所以现在没有理由不从C+ 转向 C# 。这种语言并不难,也非常适合于学习基本编程技术。易于学习、再加上.NET Framework 的功能,是使 C# 成为开始您编程生涯的绝佳方式。C# 的最新版本是 .NET 2.0 的一部分,它建立在已有的成功基础之上,还添加了一些更吸引人的功能。其中一些功能取自于 C+(至少从表面上看是这样 ) ,而另外一些功能是全新的。Visual Studio 的最新版本也有许多变化和改进,这大大简化了编程,

23、显著提高了效率。本书将全面介绍C# 编程的所有知识,从该语言本身一直到Windows和 Web编程,再到数据源的使用,最后是一些高级技术,例如图形编程。5.3 SQL Server 数据库SQLServer是一个可扩展的、高性能的、为分布式客户机/ 服务器计算所设计的数据库管理系统,实现了与WindowsNT 的有机结合,提供了基于事务的企业级信息管理系统方案。SQL(STructured Query Language) 是一种资料库查询和程式设计语言,用于存取资料以及查询、更新和管理关联式资料库系统。美国国家标准局(ANSI)与国际标准化组织 (ISO) 已经制定了 SQL 标准。 ANSI

24、 是一个美国工业和商业集团组织,发展美国的商务和通讯标准。ANSI 同时也是 ISO和 International Electrotechnical Commission (IEC)的成员之一。 ANSI 发布与国际标准组织相应的美国标准。 1992 年,ISO 和 IEC 发布了 SQL 的国际标准,称为SQL-92ANSI 随之发布的相应标准是 ANSI SQL-92。ANSI SQL-92 有时被称为ANSI SQL 。尽管不同的关联式资料库使用的 SQL 版本有一些差异,但大多数都名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -

25、- - 名师精心整理 - - - - - - - 第 16 页,共 29 页 - - - - - - - - - 遵循 ANSI SQL 标准。 SQL Server 使用 ANSI SQL-92 的扩展集,称为 T-SQL,其遵循 ANSI 制定的 SQL-92 标准。Microsoft SQL Server 2000 是一个高性能的客户端 / 服务器结构的关系数据库管理系统 (RDBMS,Relational Database Management System).SQL Server 2000 是为支持高容量的事务处理( 比如在线订购录入、存货目录、记帐或制造)以及数据仓库和决策支持系统

26、( 比如销售分析应用 ) 而设计的。SQLServer以其内置的数据复制功能、强大的管理工具、与Internet的紧密集成和开放的系统结构为广大的用户、开发人员和系统集成商提供了一个出众的数据库平台。通过新数据库镜像方法,将记录档案传送性能进行延伸。您将可以使用数据库镜像,通过将自动失效转移建立到一个待用服务器上,增强您SQL服务器系统的可用性。5.4 ASP.NET 技术A 是建立在通用语言运行时刻库(CLR )上的应用程序框架。它提供了一个生产率高且基于标准的多语言环境,用于将现有投资与下一代应用程序和服务集成,同时提供了解决 Internet 规模应用程序的部署和操作难题的灵活性。他用来

27、在服务器端构建功能强大的web应用程序。ASP.net 不仅仅是 Active Server Page (ASP) 的下一个版本 , 而且是一种建立在通用语言上的程序构架,能被用于一台 Web服务器来建立强大的Web 应用程序。 ASP.net 提供许多比现在的 Web 开发模式强大的的优势。执行效率大幅提高ASP.net 是把基于通用语言的程序在服务器上运行。不像以前的 ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。世界级的工具支持ASP.net 构架是可以用 Microsoft (R)公司最新的产品 Visual S开发环境进行开发

28、, WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.net 强大化软件支持的一小部分。强大性和适应性名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 17 页,共 29 页 - - - - - - - - - 因为 ASP.net 是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server 上)。通用语言的

29、基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net 的 Web应用中。 ASP.net 同时也是 language-independent语言独立化的, 所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C# (C+ 和 Java 的结合体), VB ,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+ 开发的程序,能够完整的移植向ASP.net 5.5功能实现5.5.1 登录流程图开始验证进入主页面结束是输入用户名和密码否名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - -

30、 - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 29 页 - - - - - - - - - 5.5.2 登录代码实现/* * 开发人:于炳煜* 开发时间: 1014-12-12 * 模块名称:登录页面* 功能简述:输入正确的用户名密码时即可进入主页面*/ protectedvoid Button1_Click(object sender, EventArgs e) SqlCommand cmd = new SqlCommand ( select *from Register where UserName= + TextBox1.Text + and

31、UserPwd= + TextBox2.Text + , clsCon .DBOpen(); SqlDataReader dt = cmd.ExecuteReader(); string type = ; if (dt.Read() type = Convert .ToString(dt.GetValue(8); dt.Close(); clsCon .DBClose(); if (type = 1 ) Response.Redirect(Manager.aspx); SqlCommandcmd1 = new SqlCommand ( select count(*) from Register

32、 where UserName= + TextBox1.Text + and UserPwd= + TextBox2.Text + , clsCon .DBOpen(); int i = (int )cmd1.ExecuteScalar(); if (i 0) SessionName = TextBox1.Text; Response.Redirect(Main.aspx); else Response.Write(alert(用户名或密码错误 );location=javascript:history.go(-1); clsCon .DBClose(); 名师资料总结 - - -精品资料欢迎

33、下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 19 页,共 29 页 - - - - - - - - - 5.5.3 注册流程图开始输入用户名密码Email 等验证进入登录界面结束是否5.5.4 注册代码实现/* * 开发人:于炳煜* 开发时间: 1014-12-12 * 模块名称:注册页面* 功能简述:注册成功后即可进入登录界面*/ protectedvoid Button1_Click(object sender, EventArgs e) if (Page.IsValid) try SqlConnection

34、con = newSqlConnection( ConfigurationManager.ConnectionStringsGraduateConnectionString.ConnectionString); con.Open(); string sex = 男; if (RadioButton3.Checked = true ) sex = 女 ; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 29 页 - - - - - - - - - SqlCommand c

35、md = new SqlCommand ( insert into register values (+ TextBox1.Text.Trim() + ,+ TextBox3.Text.Trim() + ,+ TextBox4.Text.Trim() + ,+ sex + ,+ TextBox7.Text.Trim() + ,+ TextBox5.Text.Trim() + ,+ TextBox6.Text.Trim() + , + + ) , clsCon .DBOpen(); cmd.ExecuteNonQuery(); clsCon .DBClose(); Response.Redire

36、ct(CG.aspx ); catch ( Exception ee) Response.Write(); Response.Write(alert(提交失败! ) ); Response.Write(); protectedvoid CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args) SqlCommand cmd1 = new SqlCommand ( select count(*) from Register where UserName= + TextBox1.Text + , clsC

37、on .DBOpen(); int i = (int )cmd1.ExecuteScalar(); if (i 0) args.IsValid = false ; else args.IsValid = true ; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 21 页,共 29 页 - - - - - - - - - 5.5.5 歌曲下载流程图开始歌曲名称歌曲下载结束5.5.6 歌曲下载代码实现/* * 开发人:于炳煜* 开发时间: 1014-12-12 * 模块名称:下载页面

38、* 功能简述:当点击下载歌曲时即可下载歌曲*/ protectedvoid GridView1_SelectedIndexChanged(object sender, EventArgs e) if (GridView1.SelectedIndex != -1) string M_Id = GridView1.DataKeysGridView1.SelectedIndex.Value .ToString (); string M_FileName = ; if (M_Id != ) SqlConnection con = new SqlConnection(); con.ConnectionS

39、tring = ConfigurationManager.ConnectionStringsgraduateConnectionString.ConnectionString; con.Open (); SqlCommand cmd=new SqlCommand ( select M_LuJing from Music where 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 29 页 - - - - - - - - - M_id= +M_Id+,con ); M_F

40、ileName=cmd.ExecuteScalar().ToString (); con.Close (); if (M_FileName!= ) Response.TransmitFile(Server.MapPath(Music ) + + M_FileName); string FileName = M_FileName; string filePath = Server .MapPath(Music )+ +M_FileName ; if (System.IO.File .Exists(filePath) = false ) return ; FileName = new FileIn

41、fo(filePath).Name; HttpContext.Current.Response.Clear(); HttpContext.Current.Response.AddHeader(Content-Disposition, attachment; filename= + FileName); HttpContext.Current.Response.WriteFile(filePath); HttpContext.Current.Response.End(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整

42、理 - - - - - - - 第 23 页,共 29 页 - - - - - - - - - 第 6 章 软件部署及测试分析6.1 软件配置建议服务器操作系统为: Windows 2000 Server 数据库为: Microsoft SQL Server 2000 工作站:所有的Windows平台。例如: WindowsXP 6.2 测试分析6.2.1 单元测试单元测试(模块测试) 是开发者编写的一小段代码, 用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。例如,你可能把一个很大的值放入一个有序 list 中

43、去,然后确认该值出现在list 的尾部。或者,你可能会从字符串中删除匹配某种模式的字符,然后确认字符串确实不再包含这些字符了。单元测试(模块测试)是由程序员自己来完成,最终受益的也是程序员自己。可以这么说,程序员有责任编写功能代码,同时也就有责任为自己的代码编写单元测试。执行单元测试,就是为了证明这段代码的行为和我们期望的一致。工厂在组装一台电视机之前, 会对每个元件都进行测试, 这, 就是单元测试。单元测试的优点:1、它是一种验证行为。程序中的每一项功能都是测试来验证它的正确性。它为以后的开发提供支缓。就算是开发后期,我们也可以轻松的增加功能或更改程序结构,而不用担心这个过程中会破坏重要的东

44、西。而且它为代码的重构提供了保障。这样,我们就可以更自由的对程序进行改进。2、它是一种设计行为。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 29 页 - - - - - - - - - 编写单元测试将使我们从调用者观察、思考。特别是先写测试(test-first),迫使我们把程序设计成易于调用和可测试的,即迫使我们解除软件中的耦合。3、它是一种编写文档的行为。单元测试是一种无价的文档,它是展示函数或类如何使用的最佳文档。这份文档是可编译、可运行的,并且它保持最新,永

45、远与代码同步。4、它具有回归性。自动化的单元测试避免了代码出现回归,编写完成之后,可以随时随地的快速运行测试。6.2.2 黑盒测试黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用,在测试时,把程序看作一个不能打开的黑盆子,在完全不考虑程序内部结构和内部特性的情况下,测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数锯而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。黑盒测试方法主要有等价类划分、边值分析、 因果图、错误推测等,主要用于软件确认测试。“黑盒”法着眼于程序

46、外部结构、不考虑内部逻辑结构、针对软件界面和软件功能进行测试。“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。实际上测试情况有无穷多个,人们不仅要测试所有合法的输入,而且还要对那些不合法但是可能的输入进行测试。6.2.3 白盒测试白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程, 可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。名师资料总结 - - -精品资料欢迎

47、下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 29 页 - - - - - - - - - “白盒”法全面了解程序内部逻辑结构、 对所有逻辑路径进行测试。 “白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。但即使每条路径都测试了仍然可能有错误。第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。第二,穷举路径测试不可能查出程序中因遗漏路径而出错。第三,穷举路径测试可能发现不了一些与数据相关的

48、错误。6.2.4 集成测试集成测试(也叫组装测试,联合测试)是单元测试的逻辑扩展。它的最简单的形式是:两个已经测试过的单元组合成一个组件,并且测试它们之间的接口。从这一层意义上讲,组件是指多个单元的集成聚合。在现实方案中,许多单元组合成组件,而这些组件又聚合成程序的更大部分。方法是测试片段的组合,并最终扩展进程,将您的模块与其他组的模块一起测试。最后,将构成进程的所有模块一起测试。此外,如果程序由多个进程组成,应该成对测试它们,而不是同时测试所有进程。集成测试识别组合单元时出现的问题。 通过使用要求在组合单元前测试每个单元并确保每个单元的生存能力的测试计划,可以知道在组合单元时所发现的任何错误

49、很可能与单元之间的接口有关。这种方法将可能发生的情况数量减少到更简单的分析级别。集成测试是在单元测试的基础上, 测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动。也就是说,在集成测试之前,单元测试应该已经完成,集成测试中所使用的对象应该是已经经过单元测试的软件单元。这一点很重要,因为如果不经过单元测试, 那么集成测试的效果将会受到很大影响,并且会大幅增加软件单元代码纠错的代价。集成测试是单元测试的逻辑扩展。在现实方案中, 集成是指多个单元的聚合,许多单元组合成模块,而这些模块又聚合成程序的更大部分,如分系统或系统。

50、集成测试采用的方法是测试软件单元的组合能否正常工作,以及与其他名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 29 页 - - - - - - - - - 组的模块能否集成起来工作。最后,还要测试构成系统的所有模块组合能否正常工作。集成测试所持的主要标准是软件概要设计规格说明,任何不符合该说明的程序模块行为都应该加以记载并上报。所有的软件项目都不能摆脱系统集成这个阶段。不管采用什么开发模式,具体的开发工作总得从一个一个的软件单元做起,软件单元只有经过集成才能形成一个有机

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁