本课题基于协同过滤算法,主要采用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.1 nodejs技术 4 2.2 协同过滤算法介绍 4 2.3 express框架 4 2.4 MySQL数据库 5 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 系统设计 12 4.1系统功能结构设计图 12 4.2数据库设计 13 4.2.1数据库设计原则 13 4.2.2 数据表设计 15 5系统详细设计 20 5.1系统功能实现 20 5.2管理员功能模块实现 22 5.3本章小结 26 6 系统调试与测试 27 6.1软件测试原则 27 6.2软件测试过程 28 6.3测试用例 29 6.4本章小结 30 结 论 31 参考文献 32 致 谢 33

1 绪 论 近年来,随着互联网科技的进步和发展,人们的生活水平得到了极大的提高,图书的数量也在快速增加,以至于体育商品推荐的数量不断扩大,管理个性化智能体育商品推荐工作也日渐繁重。由于传统的体育商品推荐方式,人工管理成本高,效率低,还存在图书的数量不明确,与管理人员沟通方面的压力。所以人工管理方式在很大的程度上存在弊端。给人们的生活带来了非常大的不便,导致不能满足现在社会的需求。现如今对个性化智能体育商品推荐的管理成为一个越来越受关注的社会问题,对于能够快速的找到体育商品,也是为了提高体育商品推荐的效率。现在的个性化智能体育商品推荐的管理也是在不段完善。 1.1项目背景 主要是对于个性化智能体育商品推荐工作调研,以及对体育商品推荐信息采集、存储、查询和更新。在个性化智能体育商品推荐问题上对于现有管理上的不足,用户可以通过后期查询体育商品推荐信息情况,从而使个性化智能体育商品推荐更加便利。 用户的不同,导致所给权限的不同。管理者可对所有信息进行修删查,其他注册用户需要进行相应的操作标准,给几种不同用户不同权限与界面,从而让系统更加广泛的使用与任何个性化智能体育商品推荐上的管理。 在实际的系统项目开发中,需要怎么做开发和一些现实中的做法是紧密结合在一起的,整体开发的过程还有应用的场景通常也会是一个持续发展的过程,在一个特定的设计中,如何开发,将会对实际的实施流程产生影响,要注意到怎样进行部署和运行。因此,整个系统的研究与开发是紧密相连的。如果真的将其划分为几个独立的阶段,而忽略它作为一个综合的考虑,那么每一步的实施过程都不可避免地会遇到前一阶段考虑不完全而导致的问题,从而影响整体开发的效率。 设计者往往以需求为中心进行工作,而大多数的功能需求是从总体上进行分析和思考,即从设计者的角度去了解需求。但是要真正理解真实需要,光从开发人员的观点出发还远远不够,还需要从实际的行业发展以及相关地方情况考虑,要从更高的层面去分析,这是真实的需要;同时,我们也要更好的了解他们的用户思维,了解他们的应用情况,和他们的思想,这是他们的需要。1.2研究意义 社会进步的步伐带动了信息技术的发展,信息化的建设使得人们生活的节奏加快,至使人们更加注重信息的时效性。陈旧的管理获取信息方式将无法满足人们的需求。从而人们更加关注在线系统管理。在线系统管理可以满足现代人们获取信息实时、便捷等特点,只要有网络的地方,就能迅速查找到想要的信息。 计算机技术已成为人们管理信息的重要工具。能解决人们获取信息更加有效快捷,提高人们的工作效率为重要手段。 1.3设计目的 通过对体育商品推荐内容的学习研究,进而设计并实现一个基于协同过滤算法的个性化智能体育商品推荐系统。系统实现的主要功能包括首页、个人中心、用户管理、商品分类管理、商品信息管理、交流论坛、留言板、系统管理、订单管理等功能的操作。还有可以正确的为用户服务,准确显示当前信息。 在个性化智能体育商品推荐系统的前期,即需求分析阶段,我们对体育商品推荐的需求进行了详细的描述,并且在需求规范中有详细的描述和阐明。根据系统需求的分析,对个性化智能体育商品推荐的管理进行了整体的设计。着重对软件模块的设计进行了详细的分析,以达到对系统的需求。重点阐述了系统的划分、接口的确定、各模块间的数据传输、数据结构与模块结构的设计。在下面的概要设计中,将会详细地描述这个阶段中的系统。 1.4设计思想 在开发与设计中,要有正确的开发思路,要对开发环境、语言、架构、操作系统这些方面做一些了解,最后就是完整的思路模式。系统的设计按照以下原则执行: (1)有效性原则 能够进行有效的设计,对于用户来说是比较满意的,正常情况下可以满足需求,还有是有用的特定意义,可以说都是在有效的范围里。都是用一些操作,还有开发的思维,能够给使用者带来的使用。所谓设计就是需求的想法,不完整就不能够算是一个好的系统,可以使用的系统有效性是很高的,而且还有效使用,在实现用户的需求时才能够很好而不会有错误的。 (2)可扩展性 从“可伸缩”的意义来看,许多人认为,讨论改进性能、实现高可用性,甚至是专门的技术和协议。很明显,这些都与可扩充性无关,你必须知道有关速度、性能、可用性、应用平台、网络等等,但是,这并不是一个可扩充的定义。其核心内容是增加一个功能逻辑,或者减少一个功能,逻辑上并不会影响到其他已经编写好的功能模块,这就是可扩展性含义。 系统的可扩展性设计非常重要,但是又非常难以掌握,很多试图通过高并发语言等方式缓解开发者精力,但是,无论采取什么技术,如果应用系统内部是比较的麻烦,比如对数据库的严重依赖,当系统的存取规模达到一定程度时,就会将资源集中在一个或两个数据库服务器上,这时进行分区扩展伸缩就比较困难。 (3)用户的需求原则 在设计系统之前,一般都是先了解一下系统,了解一下系统中的信息在哪里,然后再进行相应的设置。但我们也承认,许多使用者并不能真正了解设计师的想法,并且经过研究发现,系统所服务的对象是广大的用户,并不是掌握这些知识的设计者,所以我们得通过特殊的界面来实现让用户方便使用的系统。 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数据库设计 4.2.1数据库设计原则 学习程序设计,如果要了解数据库管理系统或者是根据需求而制定的系统接口,就必须创建一种数据库管理系统的模式,用来保存数据资料,这样当在应用编程过程中时候,就不需要再向操作系统页面上加载信息,进而增加了整个系统的工作效率。信息库管理系统中保存着许多数据,应该说是一个管理信息系统建设的中心和基础,而信息库管理系统也为管理信息系统建设提出了新增、删除、更改和搜索的操作功能,使管理信息系统建设能够迅速地查询所需要的数据,而不会直接从程序代码中查找。信息库管理系统通过将信息表的各个组成部分按照特定的方法准确地合并,排序和组成信息库管理系统。 通过对个性化智能体育商品推荐系统的主要功能信息进行规划并分为若干功能实体信息,实体信息将使用E-R图加以表示,本系统的主要功能实体图如下图所示。

图4-2留言板实体图

图4-3交流论坛实体图

图4-4商品信息评论实体图

图4-5用户实体图

图4-6购物车实体图 4.2.2 数据表设计 在关系数据E-R图中,分析并创建数据表,数据表用来记录信息,数据表关系由多个数据表组成,下面介绍的是数据表各个字段信息如下表所示。 表4-1:留言板 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP userid bigint 留言人id username varchar 200 用户名 avatarurl longtext 4294967295 头像 content longtext 4294967295 留言内容 cpicture longtext 4294967295 留言图片 reply longtext 4294967295 回复内容 rpicture longtext 4294967295 回复图片

表4-2:交流论坛 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP title varchar 200 帖子标题 content longtext 4294967295 帖子内容 parentid bigint 父节点id userid bigint 用户id username varchar 200 用户名 avatarurl longtext 4294967295 头像 isdone varchar 200 状态

表4-3:商品信息评论表 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP refid bigint 关联表id userid bigint 用户id avatarurl longtext 4294967295 头像 nickname varchar 200 用户名 content longtext 4294967295 评论内容 reply longtext 4294967295 回复内容

表4-4:配置文件 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 name varchar 100 配置参数名称 value varchar 100 配置参数值

表4-5:token表 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 userid bigint 用户id username varchar 100 用户名 tablename varchar 100 表名 role varchar 100 角色 token varchar 200 密码 addtime timestamp 新增时间 CURRENT_TIMESTAMP expiratedtime timestamp 过期时间 CURRENT_TIMESTAMP

表4-6:用户 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP yonghuzhanghao varchar 200 用户账号 mima varchar 200 密码 yonghuxingming varchar 200 用户姓名 touxiang longtext 4294967295 头像 xingbie varchar 200 性别 nianling int 年龄 shouji varchar 200 手机 money float 余额 0

表4-7:购物车表 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP tablename varchar 200 商品表名 shangpinxinxi userid bigint 用户id goodid bigint 商品id goodname varchar 200 商品名称 picture longtext 4294967295 图片 buynumber int 购买数量 price float 单价 discountprice float 会员价 goodtype varchar 200 商品类型

表4-8:商品信息 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP shangpinbianhao varchar 200 商品编号 shangpinmingcheng varchar 200 商品名称 shangpinfenlei varchar 200 商品分类 fengmian longtext 4294967295 封面 guige varchar 200 规格 onelimittimes int 单限 alllimittimes int 库存 clicktime datetime 最近点击时间 price float 价格

表4-9:订单 字段名称 类型 长度 字段说明 主键 默认值 id bigint 主键 主键 addtime timestamp 创建时间 CURRENT_TIMESTAMP orderid varchar 200 订单编号 tablename varchar 200 商品表名 shangpinxinxi userid bigint 用户id goodid bigint 商品id goodname varchar 200 商品名称 picture longtext 4294967295 商品图片 buynumber int 购买数量 price float 价格 0 discountprice float 折扣价格 0 total float 总价格 0 discounttotal float 折扣总价格 0 type int 支付类型 1 status varchar 200 状态 address varchar 200 地址 tel varchar 200 电话 consignee varchar 200 收货人 remark varchar 200 备注 logistics longtext 4294967295 物流 goodtype varchar 200 商品类型

5系统详细设计 5.1系统功能实现 当人们打开系统的网址后,首先看到的就是首页界面。在这里,人们能够看到系统的导航条,通过导航条导航进入各功能展示页面进行操作。  6 系统调试与测试 系统的测试是必须的,需要知道的是这个阶段不是单独的,而是在全部的时间进行。这么做可以及时发现问题,还能找到产生矛盾的地方,并且可以尝试修改,这样就能完善系统。对于被测试的系统,都可以找到一些问题,而且还可以找到对应的位置在哪。其目的是对于整体的测试,发现需求中存在的矛盾,就可以做出修改了。测试的过程是对应于整体,有对软件的测试,发现需求的符合度,接下来,就是对数据的检测,以及对硬件的检测。 在软件测试规划中,必须了解测试流程,包括功能概述,测试周期,测试方法,测试范围,测试配置,测试技巧,测试交流,风险分析等。对于一些开发的人员,是可以知道测试方法,找到测试过程的一些的问题,然后可以应对这些问题。 6.1软件测试原则 系统的项目开始启动,系统测试也就是正式开始。软件的是有很多特殊性质,其一些测试也是整体的时间,不是一个单独的过程,因为有可能在所以时间段里,可以有不同的问题。从需求分析、系统设计的过程中,就可以进行系统的测试,制定相应的测试内容和设计文档,并且在整个开发过程中,都要进行系统的审核和确认[13],只有这样,才能更快的发现错误,从而提升系统的质量。为了更早地进行检测,让测试人员可以早知道测试难度,还有进行工作的准备,提前了解关于问题的风险,便于能够提高测试的效率,而且还能保证开发质量,还能够避免风险存在于测试里的,可以有更加完善的方案。 在测试过程中有一些问题,还有一些不足能被发现,这样测试可以使软件中有比较少的问题。有些人觉得只要能够通过软件测试的系统,就不会再存在任何问题,便可以比较放心的使用。这种把软件测试夸大的思想是违反原则的。总的来说即使软件测试能够发现任何问题,也不足以证明软件当中就没有任何的问题,系统就是完全正确的。软件测试必须很快地到软件开发过程中,这样就可以很快的地发现软件缺陷,并且越快发现软件问题,软件的修复成本就会越小。可以让测试人员加入需求的开发过程,以确保需求的可以测试的性质、正确性等,便可以更加有效地节省开发带来的成本。在有关于测试的环节当中也会尽早的找到问题,要是开发人员在某个模块发现了问题,那么在这模块中或许会存在不止一个问题。现在软件都比较复杂,而且测试也有难度,几乎不能有测试可以是完全。 测试是在一定的顺序,每个不同的阶段能够由出现的问题,可以了解到它的风险,这样也可以加强测试,从而可以保证软件使用时的质量。测试是需要比较早开始的,一方面就是保证软件的质量,有效的降低风险以及成本。测试的人员一般在分析需求时候就已经开始测试准备了,使得系统的不足在需求或者设计阶段就可以被发现出,就这点来说发现越早,能够修复的成本就越小。测试的设计可以确定测试的有效性以及效率问题,测试的工具只是提升了测试的效率,而非测试本身。在设计一个测试案例时,是还能改善可靠性,可以用更有效的方法。 6.2软件测试过程 软件测试中每当用户提出新的功能需求时,测试人员需要与开发人员一起做测试,这样测试人员就会对本次测试有个比较清晰的认识,具体要完成什么,都有什么功能等。而且当集成测试在完成后,开发的模块就会被联接在一起,从而形成一个完整的程序。每个各模块间的接口存在的许多缺陷都被消除,就可以进入了确认测试的阶段。确认测试是按照软件的需求规格,对软件进行评估是确保它否满足需求规格,然后决定最后的软件是否正常。 在测试规范后,就可以进行测试用例的编写,主要根据功能模块而展开,例如界面包括哪些操作,其中的操作是否可以正常进行,然后根据相关功能来设计,可以根据不同的情况来设计,对于一些测试过程中出现的问题等,以便查找测试任务的相关情况。 (1)单元测试 这种测试是一种用代码的编写,然后完成的测试方法,在整个检测流程中,是一个非常关键的步骤。在一项有关的程序中,可以进行测试的代码,这种的步骤和实现功能的运行过程是一样的,更加能够突出实现的时候,有关于一些数据的正确还有难易的问题。而且单元测试都由开发人员自己来实现。通常都是开发人员有义务编写相关的功能模块代码,由于对于这些问题的出现,会比别人更加的清楚。有目的单元测试,就是能够出现相应地方代码的执行行为与我们预期的具有一样的效果。一般是由开发人员查看相关代码来查找出问题,而且同样是不同的开发人员相互查看对方的代码,这样才能发现更多的问题。在使用工具扫描程序时,可以根据程序的一些错误的特征,是能够发现而且记录代码中的错误原因。还有就是可以使用工具能够自动生成测试用例,而且也能执行相关程序的测试,这种方式也是由于发现一些行为上的特征,并且报告错误的原因,这种测试的方法只能够发现一些明显的错误的问题,对一些不明显的错误就不能测试出原因所在,就比如一直简单的加法函数,其中的错误是相对比较简单的,但是以上的测试方法仍不能发现,是由于这种测试工具不可能自动的理解代码的功能。 (2)系统测试 所谓系统测试,就是把被确定的软件系统,包括电脑的硬件和网络,都是一个整体,它可以完成整个系统的检测和验证,系统试验是对整个软件系统进行的一次试验,其目的在于检测该系统能否达到要求,发现一些和需求规定不一样或者有歧义的地方,从而能够提出更加有效的方案。这里要有出现的任何问题,为了能够找到出现问题的位置,就是需要有调试的过程,然后进一步的改正。 这种测试也能够发现和规定不一样的时候,或者是出现的一些矛盾。都是需要提前有关于规定的需求做出比较,做出能够在实际的应用里,可以运行的一些对应的测试过程的用例。 (3)集成测试 集成测试是在单元测试后面开始的,将确定测试单元之间可以相互协调的运行。由于在很大的情况中,需要的系统不是有单独的几个或者一个人来完成,所以在前面的测试过程是,通过负责独立部分的开发者,同时也要负责这里的功能测试。但是如果要是把所以的测试部分都整合在一起,就可以发生一些问题。所以这里的测试是能够说明,不同的负责者的模块可以完全的正常执行,通常在执行集成测试之前,是必须先执行单元测试。 集成测试通过将逻辑上相关的两个或许多的功能模块连接起来执行增量的测试,接着又加入更多功能模块,以及对其功能进行的测试,一直到完成所有功能模块的集然后成功测试为止。集成测试又可以是自上而下方法[15],一般从测试最顶层的功能模块开始,接着一步步地降到最低的功能模块,其中测试是按照软件的具体控制流程从上到下的进行。还可以是自底向上的集成测试,可以很快的发现底层功能模块的问题,能够提高测试的效率。如果要是了解整个的框架,就必须是对应的功能测试在可以检测完的条件。 测试过程中的集成是相对容易的,而且用到的方法也是不太难,根据对应的方法,做出测试用例的需要也比较少,但是由于无法避免的功能模块间接口的问题,所以能够一次运行成功的可能性比较小。而且要是一次集成的功能模块数量比较多,在集成测试后有可能还出现大量的错误,这样系统的错误定位以及相关的修改就会存在比较大的问题,即便能够完成集成测试,但是有可能会留下很多的错误进入系统测试。 6.3测试用例 部分系统测试用例如表6-1所示。

表 6-1 测试用例表 测试功能、流程 预期结果 实际结果 结论 测试管理登录。管理员在登陆页面输入对应信息可以进入主页面 登陆成功, 之后跳转页面 登陆成功, 成功跳转页面 测试成功 6.4本章小结 一开始系统的测试是可以不用考虑整个的程序,只是考虑它的某个正常的部分,而且也可以不用看到其正常的运行的功能,暂时先不用了解具体的结构是什么样。只是用软件就能确定的测试,能够判断出测试的精确程度。这个软件的测试,其实是用一个软件的内部构造来进行的。同时经过一些分析来测试的。同时也是由代码进行的软件测试,开发者可以通过检查代码或利用开发工具,来判定系统的质量。 在正常的情况下,需要软件的安装程序必须能够比较好的与现存在系统是可以兼容的,而且还能有相关的提示信息,可以让用户查看,接着正常安装然后实现相应的功能。所以在这里就体现了测试的重要性,要是没有一些正确的测试过程就会导致软件安装上的错误,然后软件就不能正确的运行,所以在这里安装的测试就是比较重要的环节。其中安装的测试的目的就是检验系统能否可以成功的安装,同时也保证系统安装完成了可以正常运行。 在软件开发之后,会对软件做出测试。通过对软件的检测,能够发现软件的实际用法,主要是用户为主的,然后系统的开发人员以及质量保证的测试人员也应加入的测试。主要考虑的问题是各个功能是不是规范的,还有一些用户的会有的问题。不仅仅是一个方面的质量问题,而是需要进行全方位是功能验证,最后要确定软件是否符合要求,所以验收的测试是一项比较严格的测试项目,需要根据事先制订的一些相关的计划,进行对于软件配置的审查、功能的测试、性能的测试等,最后才能确保软件的正常使用。

结 论 在本次毕业设计中,我使用nodeja技术,并选择MySQL作为后台数据库进行访问和修改。在设计之初,我对系统逻辑功能的具体实现也很纠结,因为我对个性化智能体育商品推荐的概念还比较模糊,期间我也在网上查询了大量的信息,清楚地了解了现实生活中体育商品推荐的主要对象和管理需要完成的基本功能。

而在这个过程中也遇到了很多困难,主要有系统逻辑功能的不恰当和系统设计上的错误,当在自己获取信息时无法解决,我会与同学和老师商量和讨论,所以在这个过程中,也让我知道认识到自己的不足和团队的力量是最大的,无论是在学习还是工作中,要融入集体,这样自己才会成长得更快。

当然,在本次设计中,由于时间的不足和本人能力的限制,功能还不完善,对于论文的不足之处,希望在今后的学习中不断改进,使本系统更接近实际操作。

相关链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。