课题主要采用nodejs技术和MySQL数据库技术以及express框架进行开发。系统主要包括个人中心、用户管理、文章类型管理、文章信息管理、文章举报管理、警告信息管理、系统管理等功能,从而实现智能化的社交论坛管理方式,提高社交论坛管理的效率。
前端技术:nodejs+vue+elementui,
Express 框架于Node运行环境的Web框架,
语言 node.js
框架:Express
前端:Vue.js
数据库:mysql
数据库工具:Navicat
开发软件:VScode
视图层其实质就是vue页面,通过编写vue页面从而展示在浏览器中,编写完成的vue页面要能够和控制器类进行交互,从而使得用户在点击网页进行操作时能够正常。
代码结构讲解
1、 node_modules文件夹(有npn install产生)
这文件夹就是在创建完项目后,cd到项目目录执行npm install后生成的文件夹,下载了项目需要的依赖项。
2、package.json文件
此文件是项目的配置文件(可定义应用程序名,版本,依赖项等等)。node_modules文件夹下的依赖项是从哪里知道的呢?原因就是项目根目录下的这个package.json文件,执行npm install时会去找此文件中的dependencies,并安装指定的依赖项。
3、public文件夹(包含images、javascripts、stylesheets)
这个文件夹做过Web开发的应该一看就知道,为了存放图片、脚本、样式等文件的。
4、routes文件夹
用于存放路由文件。
5、views文件夹
存放视图。
相比于传统的社交论坛管理方式,智能化的管理方式可以大幅提高社交论坛的管理效率,实现了社交论坛管理的标准化、制度化、程序化的管理,有效地防止了社交论坛信息的随意管理,提高了信息的处理速度和精确度,能够及时、准确地查询和修正社交论坛情况等信息。目 录
1 绪 论 1
1.1项目背景 1
1.2研究意义 2
1.3设计目的 2
1.4设计思想 2
2系统开发技术 4
2.1nodejs技术 4
2.2 MySQL数据库 4
2.3express框架 4
3系统分析 6
3.1需求分析 6
3.2系统性能分析 6
3.3可行性分析 7
3.3.1经济可行性 7
3.3.2技术可行性 7
3.3.3社会可行性 8
3.4系统用例分析 8
3.5 系统流程图 9
4 系统设计 11
4.1系统功能结构设计图 11
4.2数据库设计 12
4.2.1数据库设计原则 12
4.2.2 数据表设计 13
4.2.3数据库连接 17
4.3本章小结 17
5系统详细设计 19
5.1系统功能实现 19
5.2后台模块实现 20
5.2.1管理员模块实现 21
5.2.2用户模块实现 23
5.3本章小结 23
6 系统调试与测试 25
6.1软件测试原则 25
6.2软件测试过程 26
6.3测试用例 27
6.4本章小结 28
结 论 29
参考文献 30
致 谢 31
1 绪 论
近年来,随着互联网科技的进步和发展,人们的生活水平得到了极大的提高,文学创作的频率也在快速增加,以至于基于文学创作的社交论坛信息量不断扩大,管理社交论坛信息工作也日渐繁重。由于传统的社交论坛管理方式,人工管理成本高,效率低,还存在数量不明确,与管理人员沟通方面的压力。所以人工管理方式在很大的程度上存在弊端。给人们的生活带来了非常大的不便,导致不能满足现在社会的需求。现如今对社交论坛的管理成为一个越来越受关注的社会问题,对于能够快速的交流,也是为了提高社交论坛管理的效率。现在的基于文学创作的社交论坛的管理也是在完善。
1.1项目背景
主要是对于基于文学创作的社交论坛工作调研,以及对文学创作信息采集、存储、查询和更新。在社交论坛管理问题上对于现有管理上的不足,用户可以通过后期查询文学创作信息情况,从而使社交论坛管理更加便利。
用户的不同,导致所给权限的不同。管理者可对所有信息进行修删查,其他注册用户需要进行相应的操作标准,给几种不同用户不同权限与界面,从而让系统更加广泛的使用与管理。
在实际的系统项目开发中,需要怎么做开发和一些现实中的做法是紧密结合在一起的,整体开发的过程还有应用的场景通常也会是一个持续发展的过程,在一个特定的设计中,如何开发,将会对实际的实施流程产生影响,要注意到怎样进行部署和运行。因此,整个系统的研究与开发是紧密相连的。如果真的将其划分为几个独立的阶段,而忽略它作为一个综合的考虑,那么每一步的实施过程都不可避免地会遇到前一阶段考虑不完全而导致的问题,从而影响整体开发的效率。
设计者往往以需求为中心进行工作,而大多数的功能需求是从总体上进行分析和思考,即从设计者的角度去了解需求。但是要真正理解真实需要,光从开发人员的观点出发还远远不够,还需要从实际的行业发展以及相关地方情况考虑,要从更高的层面去分析,这是真实的需要;同时,我们也要更好的了解他们的用户思维,了解他们的应用情况,和他们的思想,这是他们的需要。
1.2研究意义
社会进步的步伐带动了信息技术的发展,信息化的建设使得人们生活的节奏加快,至使人们更加注重信息的时效性。陈旧的管理获取信息方式将无法满足人们的需求。从而人们更加关注在线系统管理。在线系统管理可以满足现代人们获取信息实时、便捷等特点,只要有网络的地方,就能迅速查找到想要的信息。
计算机技术已成为人们管理信息的重要工具。能解决人们获取信息更加有效快捷,提高人们的工作效率为重要手段。
1.3设计目的
通过对基于文学创作的社交论坛管理内容的学习研究,进而设计并实现一个基于文学创作的社交论坛网站。系统实现的主要功能包括个人中心、用户管理、文章类型管理、文章信息管理、文章举报管理、警告信息管理、系统管理等功能的操作。还有可以正确的为用户服务,准确显示当前信息。
在社交论坛网站的前期,即需求分析阶段,我们对社交论坛的需求进行了详细的描述,并且在需求规范中有详细的描述和阐明。根据系统需求的分析,对社交论坛的管理进行了整体的设计。着重对软件模块的设计进行了详细的分析,以达到对系统的需求。重点阐述了系统的划分、接口的确定、各模块间的数据传输、数据结构与模块结构的设计。在下面的概要设计中,将会详细地描述这个阶段中的系统。
1.4设计思想
在开发与设计中,要有正确的开发思路,要对开发环境、语言、架构、操作系统这些方面做一些了解,最后就是完整的思路模式。系统的设计按照以下原则执行:
(1)有效性原则
能够进行有效的设计,对于用户来说是比较满意的,正常情况下可以满足需求,还有是有用的特定意义,可以说都是在有效的范围里。都是用一些操作,还有开发的思维,能够给使用者带来的使用。所谓设计就是需求的想法,不完整就不能够算是一个好的系统,可以使用的系统有效性是很高的,而且还有效使用,在实现用户的需求时才能够很好而不会有错误的。
(2)可扩展性
从"可伸缩"的意义来看,许多人认为,讨论改进性能、实现高可用性,甚至是专门的技术和协议。很明显,这些都与可扩充性无关,你必须知道有关速度、性能、可用性、应用平台、网络等等,但是,这并不是一个可扩充的定义。其核心内容是增加一个功能逻辑,或者减少一个功能,逻辑上并不会影响到其他已经编写好的功能模块,这就是可扩展性含义。
系统的可扩展性设计非常重要,但是又非常难以掌握,很多试图通过高并发语言等方式缓解开发者精力,但是,无论采取什么技术,如果应用系统内部是比较的麻烦,比如对数据库的严重依赖,当系统的存取规模达到一定程度时,就会将资源集中在一个或两个数据库服务器上,这时进行分区扩展伸缩就比较困难[1]。
(3)用户的需求原则
在设计系统之前,一般都是先了解一下系统,了解一下系统中的信息在哪里,然后再进行相应的设置。但我们也承认,许多使用者并不能真正了解设计师的想法,并且经过研究发现,系统所服务的对象是广大的用户,并不是掌握这些知识的设计者,所以我们得通过特殊的界面来实现让用户方便使用的系统。
系统分析
3.1需求分析
要想在实际的情况下,开发出一套符合使用者要求的社交论坛网站,首先要了解使用者的需求。对社交论坛的需求有深刻的了解,无论设计与开发工作多么优秀,都是一个成功的先决条件,也可以这么说,要不能满足用户需求的程序,是创造不出非常大的使用价值的,而且还给设计者带来很多的不利。需求分析是社交论坛网站设计时期的比较重要的一个阶段,它的基本内容是准确地解释出系统将会能够做些什么事情的关键问题,最终完成的是一份完整的系统的使用说明。
(1)有一些功能方面的需求,通过需求分析,可以找出需要完成的几个基本功能模块。性能要求也是指在系统设计的时候,需要满足一定的要求和限制,比如响应时间、信息处理、内存容量、磁盘容量、安全等等。
(2)系统的可靠性要求也是一个必须考虑的问题,它可以将可用性和可靠性结合起来,显示了用户在使用时经常遇到的问题。硬件要求也包括需要处理错误,以表明系统如何应对环境错误。如果自己的系统收到来自其他系统的信息,这些信息违背了某些格式,这时系统应该会有什么样的响应情况。
(3)软件方面的需求还有一些逆向的需求,就是系统不能做的事情。可以说,有很多种不同的要求,而开发人员应该能够准确的理解他们的真正需要,并且可以应用到社交论坛网站中。还有应该明确地找出一些虽然不属于当前社交论坛网站开发的情况,但是据现在的分析,将来是非常可能会需要的可能需求。经过这个需求的分析,在设计过程中对社交论坛网站将来有机会出现的问题有所准备,要能够确实需要的时候可以更加轻松的修改。
3.2系统性能分析
系统的性能是指操作系统完成现有的程序的有效性、稳定性以及响应速度,操作系统完成一个任务时,与系统自身设置、路由的设计、网络性能的测试、设备的使用情况等多个方面都密切相关,要是任何一个环节出现问题,就都会影响整个系统的性能。所以要从网络的设置、系统的操作、硬件的组合、程序的应用等方面综合检查,然后问题出现在哪个部分,可以集中进行解决。
在程序的应用、系统的操作、硬件的组合、网络的设置等方面,影响性能最大的是程序的应用和系统的操作两个方面,因为这两个方面如果出现的问题是不太容易察觉,隐蔽性非常的强。而硬件的组合、网络的设置只要出现问题,一般都能马上发现。主要了解一下系统的操作方面的性能操作思路,程序的应用方面需要具体问题还需要有具体的解决办法。
随着智能设备的快速发展,以及对于网络的深入认识,这种高度分布式架构最终会变为移动计算。但是,随着计算量的日益增大,系统架构师开始将计算任务转移到共享网络的计算上,这样,他们就可以利用共享网络的计算可以无限制的计算量和存储相关的资源,并享受其带来的比较高的可靠性以及低成本。因此,近年来,许多的企业开始向以共享网络计算为中心的更加有效化的方式发展。
3.3可行性分析
3.3.1经济可行性
系统采用的是nodejs技术来实现相应的功能的开发,综合就是一个比较基础的系统开发设计,所以所用到的有开源的开发环境所构成。而且可以利用现有的设备,不用进行另外的硬件设备购买。
用户通过使用社交论坛网站,很大程度减小了人员成本,极大提高了管理的效率。目前得由人员管理的方式存在很多不足,首先是人工成本大,并且工作效率比较低,然后是存在着很多现金流失的问题。在结合社交论坛网站的特点,还有一些记录和统计,杜绝了以上的问题,提高了社交论坛管理的安全性。
经济可行性是主要计算项目的开发成本,还有项目成功后可能带来的有效收益。很多的项目只有开发成本能控制在企业有可能接受的范围内的情况下,这样的项目才会被批准开发。然而本次系统的开发在上述所有的问题的情况下,是可以完成相关的系统设计。
3.3.2技术可行性
在研究技术可行性的时候,系统的开发环境是可以确定的,所以技术可行性最好与系统功能和性能以及一些实际的情况同时考虑。在可行性研究阶段,结合实际调整开发的内容和选择能够完成的技术体系是一个可用的手段,如果系统进入开发阶段,任何的调整都意味着会耗费更多的经历。需要再次明确的问题是,技术可行性不只是考虑在技术上是否可实现,实际上还包含了在当前的实际的情况下的技术可行性。有很多的因素例如时间不足、预期的开发目标技术难度比较难、不能有充足的技术积累、而且对于技术的掌握不够等这些实际存在的情况,都是要提前部署和认真规划的。
开发社交论坛网站的技术内容分析,目前的状况是从网络硬件和相关技术上看是可行的。该系统采用了nodejs和 MySQL技术。到现在可以知道,很多的基础知识都是经过学习使用的,在后续的设计中还需要不断的练习,学习更多相关的技术经验来充实自己对于系统的开发。
3.3.3社会可行性
在社会可行性分析中,首先能结合国家经济和社会发展的实际情况,还需要能够让用户更加的便利,给使用者带来多方面的高效益,使得可以比较快速的发展以及应用。
在可行性分析中,是比较清晰地发掘开发的系统带来的各种直接的有效的利益以及一些隐藏起来的好处,以便在后续的设计中更加的坚定和确信系统开发的意义。解决一些社会方面存在的问题,设计并开发系统肯定是要发现某类社会存在的问题,并且能够带来一定的社会价值。还有一些社会的影响力,是通过系统优势和切实的好处来产生的,能够在一定的情况下提高效率,肯定会增加一些社会的进步和发展。社会上的可行性,包括法律上的可行性,也包括法律上的可能性,法律上的可行性,需要社会上的许多因素[2],可以来实现系统建设的现实性。如果所开发的系统与国家法律或政策等相关的因素不相符合,在某些信息化的邻域中使用的是一些加密的信息或者技术问题,还有不经过正常的操作使用其他的一些公开的信息等这些情况,这样的系统的开发在法律的范围中就是不能被允许的。
其中还有一个比较重要的用户使用可行性也是通过执行系统时的可行性,是从所有情况下用户的角度来考虑系统的可行性,由于设计开发相关的系统就是站在社会中广大的用户体验考虑的,所以在这个层面考虑也是符合的。
3.4系统用例分析
在设计系统的过程中,用例图是系统设计过程中必不可少的模型,用例图可以更为细致的,结合系统中人员的有关分配,能够从细节上描绘出系统中有关功能所完成的具体事件,确切的反映出某个操作以及它们相互之间的内部联系。
其中参与者就是和系统能够发生交互的外在实体,一般可以指系统的某个用户。一个用例图就能对应出系统中的一个功能过程,系统中完整的功能都是由许多不同的用例图所组成的。
4.2.2 数据表设计
在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。
表4-1:文章信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
wenzhangbiaoti varchar 200 文章标题
tupian longtext 4294967295 图片
wenzhangleixing varchar 200 文章类型
wenzhangneirong longtext 4294967295 文章内容
fabuzhe varchar 200 发布者
fabushijian datetime 发布时间
thumbsupnum int 赞 0
crazilynum int 踩 0
clicktime datetime 最近点击时间
clicknum int 点击次数 0
userid bigint 用户id
表4-2:在线客服
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
adminid bigint 管理员id
ask longtext 4294967295 提问
reply longtext 4294967295 回复
isreply int 是否回复
表4-3:文章举报
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
wenzhangbiaoti varchar 200 文章标题
wenzhangleixing varchar 200 文章类型
fabuzhe varchar 200 发布者
jubaoliyou longtext 4294967295 举报理由
yonghuzhanghao varchar 200 用户账号
yonghuxingming varchar 200 用户姓名
sfsh varchar 200 是否审核 待审核
shhf longtext 4294967295 审核回复
表4-4:关于我们
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
subtitle varchar 200 副标题
content longtext 4294967295 内容
picture1 longtext 4294967295 图片1
picture2 longtext 4294967295 图片2
picture3 longtext 4294967295 图片3
表4-5:收藏表
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
userid bigint 用户id
refid bigint 商品id
tablename varchar 200 表名
name varchar 200 名称
picture longtext 4294967295 图片
type varchar 200 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注) 1
inteltype varchar 200 推荐类型
remark varchar 200 备注
表4-6:系统公告
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
title varchar 200 标题
introduction longtext 4294967295 简介
picture longtext 4294967295 图片
content longtext 4294967295 内容
表4-7:警告信息
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
wenzhangbiaoti varchar 200 文章标题
wenzhangleixing varchar 200 文章类型
fabuzhe varchar 200 发布者
jinggaoneirong longtext 4294967295 警告内容
jinggaoshijian datetime 警告时间
表4-8:用户
字段名称 类型 长度 字段说明 主键 默认值
id bigint 主键 主键
addtime timestamp 创建时间 CURRENT_TIMESTAMP
yonghuzhanghao varchar 200 用户账号
mima varchar 200 密码
yonghuxingming varchar 200 用户姓名
xingbie varchar 200 性别
nianling int 年龄
touxiang longtext 4294967295 头像
pquestion varchar 200 密保问题
panswer varchar 200 密保答案
4.2.3数据库连接
在本系统的设计与开发中,数据库承担着重要的作用,可以说要是没有数据的存储和管理,而系统也不会执行对应的函数。数据库是基于数据结构而设计的,数据库管理员利用数据库管理系统对海量数据进行管理,而数据库的添加、删除、修改、查询等都是非常关键的一环。
在本系统中首先进行数据库的连接,具体的配置文件uimg_sql.py中进行数据库的连接,还有创建了本次数据库中所用到的表和相关的一些参数,这些操作和建立的实现是通过在java中编写完成的,有一些时间点的记录,社交论坛信息是在数据库uchepai中完成的。
4.3本章小结
本章是系统开发的整体的一个系统设计,主要通过系统功能的设计,还有具体实现中需要考虑到的结构之间的关系,以及系统中每个功能执行的先后顺序等问题做出了详细的设计。
其次是对于数据库的具体实现的设计,首先是将数据库与开发系统相结合的特定数据库的连接问题,做出了数据库应该储存的一些数据,还有存储数据用到的一些表格的创建,以及表格里面内容的设计等工作。
5系统详细设计
5.1系统功能实现
当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。
6 系统调试与测试
6.1软件测试原则
系统的项目开始启动,系统测试也就是正式开始。软件的是有很多特殊性质,其一些测试也是整体的时间,不是一个单独的过程,因为有可能在所以时间段里,可以有不同的问题。从需求分析、系统设计的过程中,就可以进行系统的测试,制定相应的测试内容和设计文档,并且在整个开发过程中,都要进行系统的审核和确认,只有这样,才能更快的发现错误,从而提升系统的质量。为了更早地进行检测,让测试人员可以早知道测试难度,还有进行工作的准备,提前了解关于问题的风险,便于能够提高测试的效率,而且还能保证开发质量,还能够避免风险存在于测试里的,可以有更加完善的方案。
在测试过程中有一些问题,还有一些不足能被发现,这样测试可以使软件中有比较少的问题。有些人觉得只要能够通过软件测试的系统,就不会再存在任何问题,便可以比较放心的使用。这种把软件测试夸大的思想是违反原则的。总的来说即使软件测试能够发现任何问题,也不足以证明软件当中就没有任何的问题,系统就是完全正确的。软件测试必须很快地到软件开发过程中,这样就可以很快的地发现软件缺陷,并且越快发现软件问题,软件的修复成本就会越小。可以让测试人员加入需求的开发过程,以确保需求的可以测试的性质、正确性等,便可以更加有效地节省开发带来的成本。在有关于测试的环节当中也会尽早的找到问题,要是开发人员在某个模块发现了问题,那么在这模块中或许会存在不止一个问题。现在软件都比较复杂,而且测试也有难度,几乎不能有测试可以是完全。
测试是在一定的顺序,每个不同的阶段能够由出现的问题,可以了解到它的风险,这样也可以加强测试,从而可以保证软件使用时的质量。测试是需要比较早开始的,一方面就是保证软件的质量,有效的降低风险以及成本。测试的人员一般在分析需求时候就已经开始测试准备了,使得系统的不足在需求或者设计阶段就可以被发现出,就这点来说发现越早,能够修复的成本就越小。测试的设计可以确定测试的有效性以及效率问题,测试的工具只是提升了测试的效率,而非测试本身。在设计一个测试案例时,是还能改善可靠性,可以用更有效的方法。
6.2软件测试过程
软件测试中每当用户提出新的功能需求时,测试人员需要与开发人员一起做测试,这样测试人员就会对本次测试有个比较清晰的认识,具体要完成什么,都有什么功能等。而且当集成测试在完成后,开发的模块就会被联接在一起,从而形成一个完整的程序。每个各模块间的接口存在的许多缺陷都被消除,就可以进入了确认测试的阶段。确认测试是按照软件的需求规格,对软件进行评估是确保它否满足需求规格,然后决定最后的软件是否正常。
在测试规范后,就可以进行测试用例的编写,主要根据功能模块而展开,例如界面包括哪些操作,其中的操作是否可以正常进行,然后根据相关功能来设计,可以根据不同的情况来设计,对于一些测试过程中出现的问题等,以便查找测试任务的相关情况。
(1)单元测试
这种测试是一种用代码的编写,然后完成的测试方法,在整个检测流程中,是一个非常关键的步骤。在一项有关的程序中,可以进行测试的代码,这种的步骤和实现功能的运行过程是一样的,更加能够突出实现的时候,有关于一些数据的正确还有难易的问题。而且单元测试都由开发人员自己来实现。通常都是开发人员有义务编写相关的功能模块代码,由于对于这些问题的出现,会比别人更加的清楚。有目的单元测试,就是能够出现相应地方代码的执行行为与我们预期的具有一样的效果。一般是由开发人员查看相关代码来查找出问题,而且同样是不同的开发人员相互查看对方的代码,这样才能发现更多的问题。在使用工具扫描程序时,可以根据程序的一些错误的特征,是能够发现而且记录代码中的错误原因。还有就是可以使用工具能够自动生成测试用例,而且也能执行相关程序的测试,这种方式也是由于发现一些行为上的特征,并且报告错误的原因,这种测试的方法只能够发现一些明显的错误的问题,对一些不明显的错误就不能测试出原因所在,就比如一直简单的加法函数,其中的错误是相对比较简单的,但是以上的测试方法仍不能发现,是由于这种测试工具不可能自动的理解代码的功能。
(2)系统测试
所谓系统测试,就是把被确定的软件系统,包括电脑的硬件和网络,都是一个整体,它可以完成整个系统的检测和验证,系统试验是对整个软件系统进行的一次试验,其目的在于检测该系统能否达到要求,发现一些和需求规定不一样或者有歧义的地方,从而能够提出更加有效的方案。这里要有出现的任何问题,为了能够找到出现问题的位置,就是需要有调试的过程,然后进一步的改正。
这种测试也能够发现和规定不一样的时候,或者是出现的一些矛盾。都是需要提前有关于规定的需求做出比较,做出能够在实际的应用里,可以运行的一些对应的测试过程的用例。
(3)集成测试
集成测试是在单元测试后面开始的,将确定测试单元之间可以相互协调的运行。由于在很大的情况中,需要的系统不是有单独的几个或者一个人来完成,所以在前面的测试过程是,通过负责独立部分的开发者,同时也要负责这里的功能测试。但是如果要是把所以的测试部分都整合在一起,就可以发生一些问题。所以这里的测试是能够说明,不同的负责者的模块可以完全的正常执行,通常在执行集成测试之前,是必须先执行单元测试。
集成测试通过将逻辑上相关的两个或许多的功能模块连接起来执行增量的测试,接着又加入更多功能模块,以及对其功能进行的测试,一直到完成所有功能模块的集然后成功测试为止。集成测试又可以是自上而下方法,一般从测试最顶层的功能模块开始,接着一步步地降到最低的功能模块,其中测试是按照软件的具体控制流程从上到下的进行。还可以是自底向上的集成测试,可以很快的发现底层功能模块的问题,能够提高测试的效率。如果要是了解整个的框架,就必须是对应的功能测试在可以检测完的条件。
测试过程中的集成是相对容易的,而且用到的方法也是不太难,根据对应的方法,做出测试用例的需要也比较少,但是由于无法避免的功能模块间接口的问题,所以能够一次运行成功的可能性比较小。而且要是一次集成的功能模块数量比较多,在集成测试后有可能还出现大量的错误,这样系统的错误定位以及相关的修改就会存在比较大的问题,即便能够完成集成测试,但是有可能会留下很多的错误进入系统测试。
6.3测试用例
部分系统测试用例如表6-1所示。
表 6-1 测试用例表
测试功能、流程 预期结果 实际结果 结论
测试管理登录。管理员在登陆页面输入对应信息可以进入主页面 登陆成功,
之后跳转页面 登陆成功,
成功跳转页面 测试成功
6.4本章小结
一开始系统的测试是可以不用考虑整个的程序,只是考虑它的某个正常的部分,而且也可以不用看到其正常的运行的功能,暂时先不用了解具体的结构是什么样。只是用软件就能确定的测试,能够判断出测试的精确程度。这个软件的测试,其实是用一个软件的内部构造来进行的。同时经过一些分析来测试的。同时也是由代码进行的软件测试,开发者可以通过检查代码或利用开发工具,来判定系统的质量。
在正常的情况下,需要软件的安装程序必须能够比较好的与现存在系统是可以兼容的,而且还能有相关的提示信息,可以让用户查看,接着正常安装然后实现相应的功能。所以在这里就体现了测试的重要性,要是没有一些正确的测试过程就会导致软件安装上的错误,然后软件就不能正确的运行,所以在这里安装的测试就是比较重要的环节。其中安装的测试的目的就是检验系统能否可以成功的安装,同时也保证系统安装完成了可以正常运行。
在软件开发之后,会对软件做出测试。通过对软件的检测,能够发现软件的实际用法,主要是用户为主的,然后系统的开发人员以及质量保证的测试人员也应加入的测试。主要考虑的问题是各个功能是不是规范的,还有一些用户的会有的问题。不仅仅是一个方面的质量问题,而是需要进行全方位是功能验证,最后要确定软件是否符合要求,所以验收的测试是一项比较严格的测试项目,需要根据事先制订的一些相关的计划,进行对于软件配置的审查、功能的测试、性能的测试等,最后才能确保软件的正常使用。
结 论
在本次毕业设计中,我使用nodejs技术,并选择MySQL作为后台数据库进行访问和修改。在设计之初,我对系统逻辑功能的具体实现也很纠结,因为我对社交论坛管理的概念还比较模糊,期间我也在网上查询了大量的信息,清楚地了解了现实生活中社交论坛管理的主要对象和管理需要完成的基本功能。
而在这个过程中也遇到了很多困难,主要有系统逻辑功能的不恰当和系统设计上的错误,当在自己获取信息时无法解决,我会与同学和老师商量和讨论,所以在这个过程中,也让我知道认识到自己的不足和团队的力量是最大的,无论是在学习还是工作中,要融入集体,这样自己才会成长得更快。
当然,在本次设计中,由于时间的不足和本人能力的限制,功能还不完善,对于论文的不足之处,希望在今后的学习中不断改进,使本系统更接近实际操作。