基于PHP的MyStyle商城系统的设计与实现.doc

上传人:封****n 文档编号:96763847 上传时间:2024-03-19 格式:DOC 页数:53 大小:4.32MB
返回 下载 相关 举报
基于PHP的MyStyle商城系统的设计与实现.doc_第1页
第1页 / 共53页
基于PHP的MyStyle商城系统的设计与实现.doc_第2页
第2页 / 共53页
点击查看更多>>
资源描述

《基于PHP的MyStyle商城系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《基于PHP的MyStyle商城系统的设计与实现.doc(53页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、目录1.绪言11.1 项目设计的背景11.2 设计目的与意义11.2.1 设计目的11.2.2 设计意义12.系统的相关技术介绍22.1 相关技术介绍22.1.1 ThinkPHP框架介绍22.1.2 Apache服务器22.1.3 PHP技术32.1.4 MySQL数据库33.系统功能的实现43.1 网上商城系统流程图43.1.1 前台业务流程图43.1.2 后台管理业务流程图53.2 商城前台的设计63.2.1 MVC模式用例63.2.2 用户登录注册模块83.2.3 购物车模块123.2.4 在线支付接口的实现163.3 商城管理后台设计223.3.1 后台商品管理模块223.3.2 后

2、台管理员管理模块253.3.3 商品交易管理模块273.4 主要功能模块的业务流程293.4.1 商城购物流程293.4.2 数据流图303.4.3 数据字典323.4.4 数据库概念结构设计344.系统的测试与分析394.1 测试的策略394.2 测试目标404.3 测试需求分析404.4 测试结果414.4.1 用户模块测试414.4.2 购物车模块测试424.4.3 订单管理测试435结语与展望455.1总结455.2 展望45参考文献46致 谢47广东东软学院本科生毕业设计(论文)1. 绪言1.1 项目设计的背景网上商城是指类似于现实生活中的百货超市,二者的最大区别是,网上商城是在互联

3、网线上进行购物的一种电子商务形式,在万维网中实现从买到卖这一交易效果。如今的网上购物是群众们非常时尚的购物方式,而广大商家们也非常重视电子商务的营销作用,都纷纷顺势利用互联网的低成本来对其商品进行营销。为便捷当代人们的购物形式,提升广大商家们的营销效率以及顺应商业模式的发展,本人特意创建了一款能解决以上问题的互联网商城系统。1.2 设计目的与意义1.2.1 设计目的设计该系统目的是为了方便商家进行电子商务,商家和消费者在网上进行买卖产品。减少商品买卖过程的两头环节,消弭其中的代理间的差价以及运输资金费用,促成对普通消费与加强市场之间的流通所带来的广大发展空间。1.2.2 设计意义创建一个网上商

4、城,既可减少消费群众在购买商品过程中由于繁琐的程序所耗费掉的时间,使消费者购物更顺心便捷,又能有效地够减轻商家们实现销售商品时为店铺租金付出成本压力,降低商家们的商业运作本钱。由本商城系统的设计精确地瞄准了以上现象的所在,力求跟上现代流行的购物方式以及解决商家们的痛点,为商家们的商品进行线上推广与销售,旨在实现商品在互联网上的销售及展示,同时,购物者能在线上实现购买商家的商品,实现在线交易支付等功能。使用B2C这一创新型的商业运作模式,足以体现电子商务可以减少以往商业营业的资金、提高商品买卖过程中的服务质量、并且能及时发布店铺最新布告的优点。这样一套商城网站系统能够具体化、合理化地管理营销情况

5、,用结构化的思维方式去认识计算机的工作原理。2.系统的相关技术介绍2.1 相关技术介绍2.1.1 ThinkPHP框架介绍PHP技术中最为流行的一款Web框架非ThinkPHP莫属,该框架作为一款轻量级的Web开发框架,其不但免费,而且具备疾速开源的、并拥有面向对象等特性,其创始于2006年初,该框架从诞生以来就一直保持至简与实用的设计理念,在注重其易用性的基础上,也维持打造其强大的性能和简洁的代码。同时,TP(ThinkPHP的简写)框架具有众多的原始开发功能与独特的性能,得益在社区团队的不断改进优化,该框架在易用性、灵活性以及其他方面的性能都在不断完善中。经过多年的发展与改进,TP框架已经

6、发展为国内中最具有影响力的Web(万维网)应用开发框架,并有众多典型的实际案例确保能够适用于门户级别以及商业中的web开发。该框架通过近年来的不停完善更新,而且模拟了国外许多十分出色的web应用框架与设计模式,运用面向对象的开发模式结构加上 MVC (Model View Controller)模式,RoR中的ORM(对象关系)映射与ActiveRecord(活动记录)设计模式,并交融了Struts框架中的Action思想、封装了CURD(数据库技术中的缩写)以及一些相对常用操作,也包含单一入口模式等,在认证机制、模板引擎以及拓展性等方面都有着其特有的表现。使用TP框架,能够使开发与部署应用程

7、序都变得十分快捷。其简单性、兼容性以及便捷等特性能使任何的PHP应用开发都从中受益。TP框架的发展一直延续着实用、快捷以及简洁这一宗旨,所以TP框架不断吸取以及融合更完善的技术以确保其活力,不断为Web应用开发提供着最佳的实践体验。2.1.2 Apache服务器Apache服务器是一款为用户免费提供的开源软件。在Web服务器软件行列中,Apache被使用得最普遍。它占据了寰球上一切网络服务器总量的 67.6。具备可靠、快捷、安全等特性。它可以经过应用扩展以及模块来进行高度精准的定制,确保以满足多数不一样的系统环境的要求。大部分 WordPress(PHP语言开发的博客平台)托管服务提供商均已使

8、用了 Apache 作为其本身的 Web 服务器软件。Apache服务器的基本目标是创建一款可以托管单个以上基于http协议的网站服务器。需要了解的功能包含支持数据库,身份验证机制以及支持多种编程语言。能够通过操纵其代码库以及添加多个扩展等形式来加强Apache服务器的性能。同时,其被多数Web托管公司用于作为虚拟主机以及提供共享等范围。Apache作为一款自由软件,由此用户们在使用它的过程中就会不断为其开发出新的功能与特性、不断修复软件中存在的bug,使该服务器不断发展变得更加完善。Apache服务器的最大特性是速度快、操作方式简单、性能非常稳定,并且能够作为代理服务器来利用。2.1.3 P

9、HP技术PHP(超文本预处理器)是一种服务器端脚本语言,其具有快捷性、执行效率高、开源性以及跨平台性等特征。因其吸取了Java以及Perl等编程语言的语法特性,相对于初学者来说非常易于学习,且该语言在编程中被使用得特别广泛,PHP主要运用在Web开发领域中,其相对于CGI以及Perl来说能够更疾速地执行动态网页。作为一款跨平台的语言代码,其几乎能够在所有操作系统中运行,其既能够被编译成一个CGI的二进制文件,或一个Apache模块。PHP被编译成为Apache模块的时候尤为方便。因其大致上没任何的繁琐程序所带来的负担,因而能够很疾速地得到结果。当PHP与MySQL数据库相结合时,非常适用于中小

10、型应用项目的开发,所以PHP越来越受开发人员的偏爱,并且一直被广泛应用到Web以及移动端的开发当中。2.1.4 MySQL数据库MySQL是一款非常经典的关系型数据库,使用MySQL数据库的基本上以互联网公司为主,其是被现今社会使用得最为广泛的一款数据库。MySQL的整体性能特别健壮,其带有的多线程多用户特性是其成为一款最炙手可热的数据库的一个很重要因素。与此同时,它并不是把数据统统放在一个杂乱的数据大仓库中。而是把数据库里面的数据分别储存在不相同的表中,这但提升了数据库的读写性能,而且使数据库存储结构变得更加规范。因为其查询速度快、存储更规范、使用的成本不高、重点在开源这一特征上,这都促使非

11、常多的中小型企业开发网站或者应用时都首选了MySQL。其作为一款后台数据库工具,其实它远比Fox/Access二者的性能更加强大。除此之外,MySQL数据库提供了非常多的关系型数据库管理功能,这些管理功能能够适应各种硬件平台,当中包含Unix以及主机系统。基于MySQL的优越的综合性能,由此选择其作为本系统的数据库。3.系统功能的实现3.1 网上商城系统流程图3.1.1 前台业务流程图商城前台的主要功能是为访问的普通用户给予登录注册、商品信息展示、添加商品到购物车以及商品收货的具体信息,并且确定提交最终订单等一系列功能。该商城的前台业务流程如图3-1所示。图3-1 前台业务流程3.1.2 后台

12、管理业务流程图商城后台的所有业务流程均由系统管理员来进行操控,先由系统管理员输入用户名以及密码,检查验证用户名或密码是否合法,验证通过之后就可以对商城中的用户、订单、商品等数据信息来实行管理以及维护。该商城的后台管理系统的整体业务流程如图3-2所示。图3-2 后台管理业务流程3.2 商城前台的设计3.2.1 MVC模式用例该商城系统使用了ThinkPHP框架中的MVC(模型-视图-控制器)模型来进行总的设计,这能够最大化让业务逻辑层与视图层进行解耦分离,这有利于系统日后的维护,并且很大程度上削减了模块的代码数量。商城网站首页如图3-3所示。 图3-3 商城系统网站首页以上首页页面的URL默认地

13、址是 , 是由thinkPHP框架路由来处理,分组为home,默认的控制器是IndexAction,默认动作是index,该页面的控制器代码如下:3.2.2 用户登录注册模块该商城系统的用户分为游客以及会员两种类型。游客是指尚未登录的前提下而在商城中进行浏览的一类用户。本站用户在注册是需要输入自己的用户名,设置用户密码、手机号码等信息,在注册页面中设置了判断用户输入的内容格式是否正确、输入是否为空、输入用户名或者手机号码是否已存在等判别功能。用户注册界面以及登录界面如图3-4、图3-5所示。 图3-4 用户注册界面图3-5 用户登录界面实现注册页面的部分逻辑代码如下: 用户在注册过程中,系统会

14、判断用户名或者手机号码是否已被注册过,关键代码如下:在信息验证这一功能上,我在众多第三方短信服务商中选择了云网络。本系统的短信验证流程是先点击“发送验证码”按钮,随后系统就会触发一个Ajax请求响应事件,把手机号码发送到短信平台上,随之在后台上就会生成一个验证码,并会将其发送到移动终端上,然后返回一个验证码到手机终端验证前台进行。关键代码如下:3.2.3 购物车模块购物车模块是构成商城网站不可或缺的一部分。购物车的功能模块主要是存储用户在购物时所选择的商品信息,能够在购物车中修改所需商品的数量,勾选上购物车中所选择的商品,然而购物车就可以算出所选商品的订单的总金额,同时也能够清空购物车或者选择

15、性的清除购物车中的商品,重新把想要购买的商品添到个人购物车中。用户只要在商品详情页中挑选所需购置的商品数量,点击“加入购物车”按钮,即可把想要购买的商品详细信息添加至购物车页面,如图3-6所示。点击“购物车”按钮,用户就能够看到自己所选择的商品及数量,在勾选上想要购买的商品,就会算出订单的总金额,商城购物车页面如图3-7所示。 图3-6 商品详情页图3-7 购物车页面(1)商城的购物流程用户可进入商城网站对商品进行预览,也能够使用商城网站的搜索功能找寻心仪的物品,决定好想要购买的商品及其数量,在用户已进行登录的前提中,可把选择的商品添加到购物车或者直接购买该商品,完善收货信息,完成最终订单,购

16、物的整体流程如下: 用户进入商城网站,可浏览网站推荐的商品,也可以通过搜索框或者商品分类来挑选商品;用户挑选完心仪的商品并选择好商品数量,即可把该商品的详细信息添加到购物车中;用户提交订单的请求之后,系统会检测该用户是否已经登录,如果还没在系统中登录就跳转到,若该用户已登录则需要确认用户信息,跳转到;用户登录页面,再次回到商品购物车的页面,跳转回;用户确认好订单信息之后,系统会自动完成订单的详细信息,并刷新订单表;待数据库成功更新之后,系统会返回用户订单成功的信息。商城网站购物流程如图3-8所示。图3-8 商城网站购物流程(2)商城购物流程的实现在开发该网站的过程中,商品购物车占据了大部分的开

17、发时间,毕竟它是作为网站商城的重点以及难点。当用户添加好商品到购物车,达成最终订单并提交,同时用户也可以选择性地删除购物车中的商品以及更改商品数量等操作。商品购物车的全部功能都是由CartController控制器来实现,添加商品时分为两个情况,一个是用户已经登录,一个是用户还未登录。如果用户是已经在登录的前提下,添加的商品信息会放到购物车表中。未登录的时候,因为使用了cookie来存储了用户数据,即便用户使用商城网站过程中关闭了浏览器,网站购物车里面的商品信息还仍然存在。购物车中的商品分为多规格以及无多规格,多规格商品就会用它的商品id和规格id拼接起来作为其键名,然后存进cookie(必须

18、序列化),设置时间为7天,同时也要判断cookie购物车中是否已经存在了这个键名,一旦存在此键名就直接添加数量,不存在就添加一个新的下标,即购物车商品数据。部分重要代码如下显示:3.2.4 在线支付接口的实现国内的商城网站,线上付款方式大致可以分成收款发货、担保交易巴支付宝,还有货到付款等方式。在线支付是实现网上购物的一项重要分支,它给予企业与个人一个安全与便捷的电子商务环境,在线支付真正做到了可以让用户足不出户也能够在网上购物,同时丰富了大众的消费支付方式,使支付方式变得多元化,提高了社会资金的流动速度。在线支付的手段通常能够分为:商城网站和银行提供的支付接口达成支付渠道,通过第三方支付平台

19、提供支付接口来实现交易支付这一功能。由于第三方支付平台所提供的支付接口在开发过程中工作量比较少,即便是银行在对其网上支付系统进行升级,在第三方支付平台的支付接口接入规范不变得的前提下,就无须更改商城中支付模块的代码,这很大程度上减轻了系统日后维护的工作量。与此同时,出于在线支付具备相对安全、交易成本低以及便捷的特点,愈来愈多的商城网站或者需要网上在线支付的平台网站均利用第三方支付来达到交易支付的目的。当前国内主要的第三方支付平台有支付宝、微信支付、银联商务、银联在线以及京东支付等。支付宝是当今最流行的电子支付方式之一,其由阿里巴巴集团所创立,直至2019年1月,支付宝官宣全球注册使用人员已达到

20、10亿人次,其在移动支付、电商支付等众多领域都占有重要的位置。淘宝商城买家最常用的付款方式:先把付款金额存放入支付宝作为担保资金并通知卖家进行发货,当买家确认好收获之后,支付宝中存放的交易资金就会转进到卖家的支付宝账户中,最终完成交易。交易的流程大致是:“买家使用支付宝付款”“卖家收到订单通知发货”“买家收货并确认收货”“卖家最终确认收付款”。支付宝其执行的流程大致如图3-9所示,支付执行流程用例图如3-10所示。 图3-9 支付宝第三方支付平台执行流程 图3-10 支付流程用例如上图所示,用户在商城网站中下单并付款之后,商城系统会依照手机网站支付接口alipay.trade.wap.pay

21、API的参数规范生成相应的订单数据,随后就在前端页面中应用Form表单来请求支付宝。接着支付宝就会自动把页面跳转到支付宝H5的收银台页面上,若是用户的手机上已经安装好了支付宝移动端应用,则该页面就会自动唤起支付宝APP。在使用支付宝第三方应用开发支付功能时,开发者须要关注的是两种状况,一种是用户已安装好了支付宝,另一种状况是未安装,在手机浏览器中唤起H5页面的模式下,若是用户已经安装了支付宝应用的前提下却没被唤起,最有可能是因为用户当前使用的浏览器在支付宝的白名单以外。 本商城网站是使用支付宝第三方支付来测试支付功能,借用了一个支付商户号来调试。关键步骤是,下载PHP版本的SDK,并将SDK文

22、件夹重命名为alipay并放到TP框架中的Vendor文件夹下,打开“shortcut.php”文件 ,由于C函数与TP框架中的C函数重复,所以把C函数更变为CC,调用接口用Vendor(alipay.Aopsdk)。其中Alipay.php.class中关键的支付宝配置参数如下:$parameter = array(service = $alipay_configservice,partner = $alipay_configpartner,seller_id = $alipay_configseller_id,payment_type= $alipay_configpayment_type

23、,notify_url= $alipay_confignotify_url,return_url= $alipay_configreturn_url,_input_charset= trim(strtolower($alipay_configinput_charset),out_trade_no= $out_trade_no,subject= $subject,total_fee= $total_fee,show_url= $show_url,app_pay= Y,/启用此参数能唤起钱包APP支付宝body= $body,);配置好参数后,再创建一个支付宝支付的控制器PayControl,在付

24、款成功之前,系统会先查看订单信息,然后再调用统一下单API,同时也设置了两个回调函数,一个是同步回调函数,主要是返回下单是否成功的界面供于客户查看,另一个是异步回调,作用是确认订单之后减库存等操作,创建好订单之后,系统用订单ID去获取相关信息,再去调用支付宝的。待支付完成之后,会在异步回调这个方法里面,更改商品订单状态,订单改为已支付。其中异步回调的部分关键代码如下:if($notify-checkSign() = TRUE)if ($notify-datareturn_code = FAIL) /此处应该更新一下订单状态,商户自行增删操作$log_-log_result($log_name,

25、【通信出错】:n.$xml.n);elseif($notify-dataresult_code = FAIL)/此处应该更新一下订单状态,商户自行增删操作$log_-log_result($log_name,【业务出错】:n.$xml.n);else/此处应该更新一下订单状态,商户自行增删操作/将xml转成数组$new_arr = xmlToArray($xml);$key = substr($new_arrout_trade_no,0,2);switch($key)case YK: $res=$this-UpdateOrder($new_arrout_trade_no,$new_arrtot

26、al_fee,2); if($res)echo SUCCESS;break;支付实现效果由下列图片所显示:首先选好需要购买的商品,可看到该商品的库存为2123,如图3-11所示;确定提交订单,如图3-12所示;查看订单信息,选择支付宝支付,如图3-13所示;选择好支付宝中的付款方式,选择余额宝付款,如图3-14所示;当支付显示成功之后,系统会展示订单支付成功的页面,如图3-15所示;付款成功后,订单状态被修改为已支付,并减少库存,库存变为2122,如图3-16所示; 图3-11 商品库存 图3-12 提交订单 图3-13 选择支付方式 图3-14 余额宝支付 图3-15 支付成功 图3-16

27、库存减少3.3 商城管理后台设计3.3.1 后台商品管理模块后台商品管理分为两个子模块,分别是产品类表管理和分类列表管理。系统管理员通过输入账号密码登录进入商城管理后台,能够对商城网站中的商品进行管理操作。根据商品名称、属性以及分类来查询商品信息;往商城添加商品;修改商品信息;对商品进行批量删除;把商品推荐到首页。产品类管理页面如图3-17 所示。 图3-17 产品类管理页产品类管理功能由控制器GoodsController来完成,添加产品页面如图3-18所示。图3-18 添加产品页面管理员在添加商品的过程中,上传图片时,会立即显示上传的图片,这是采用了外部插件,具体代码如下所示:管理员可在后

28、台对商城中的商品进行删除操作,其实现由del方法完成,具体代码如下:在分类列表的设计中,本商城系统使用了无限极分类的方式,使用递归算法实现无限极分类。即一个类可以拥有多个子类,其每个子类之下也可以继续细分各自的子类,无限制地创建更多分类,如Windows中创建文件夹的规则是一样的。无限极分类列表实现如图3-19所示。 图3-19 商品无限极分类3.3.2 后台管理员管理模块超级管理员可以控制普通管理员的后台操作权限,能够添加或删除普通管理员可操作的模块及方法,管理员列表页面如图3-20所示。图3-20 管理员列表页在管理员列表页中,超级管理员可对普通管理员进行查询、添加以及删除管理员并可对管理

29、员的角色身份进行编辑。其中编辑管理员具体代码如下所示:本商城系统后台管理员模块设计使用了RBAC(Role-Based Access Control)基于角色的权限访问控制。RBAC的核心是其连接帐户、角色和权限的设计方式,其工作原理如图3-21所示: 图3-21 RBAC工作原理由上图可容易看出,用户在访问后台系统时通过使用不同的账号就会被系统判别出该用户的角色身份。在该账户所在的角色下,若不持有该模块的权限,则该用户即不能操作此模块。总而言之,每个用户若要使用后台系统则必须要基于一个用户账号,利用特定的用户账号来进行登录操作。而RBAC模型,就是基于多角色和多账号来建立权限管控。具体形式如

30、图图3-22所示。 图3-22 多账号多角色权限以上可以看出,用户的角色不一样就致使他对系统所持有的权限和功能模块的使用权限都不相同,由此可见,生活中公司中不同的职位(角色)都能够应用角色映射这一方式,本系统的权限设置也同样使用这种方式创建。但需要考虑到另一种情况,系统的超级管理员与普通管理员,这样的角色它并没有实际的映射。由此在系统设计的过程中就需要设置默认的“超级账户”,这种账户原本就具备这样的权限和角色,所以就不需要特意添加或者创建角色。除了操作权限不同以外,权限与角色设计还必须考虑到数据权限。对于系统最高阶的角色,其在开发设计的过程中就应该默认赋予一个具备全局权限以及数据的角色,因为在

31、一个全局系统中,超级管理员是不应该在系统使用过程中所被创建的。因此,处于数据权限最高端的“超级管理员”,在系统创建的过程中就应该默认设置好。其余的角色能够使用配置创建,同样也能够赋予其“超级管理员”同样的权限。管理员权限管理页面如图3-23所示。 图3-23 管理员权限管理页面3.3.3 商品交易管理模块商品交易模块主要分为交易信息、订单管理以及订单回收站三个子模块。交易信息页面:主要是使用条形图的形式,按照月份显示每个月的订单数量进行统计展示,页面效果如图3-24所示。图3-24 交易信息页面订单管理页面:管理员可对商城网站中的所有订单按照订单号、订单状态、买家名称以及时间的方式进行查询订单

32、操作。管理员可看到订单编号、具体下单时间、商品具体信息以及支付状态等,也可对订单进行发货等操作。订单页面如图3-25所示。3-25 商品订单页面商品订单回收站:管理员可把错误或过期的订单信息添加到订单回收站,同时可查看回收站中订单详情,也可通过订单号、买家信息以及订单状态等对订单进行查询,管理员也能把回收站中的订单还原到商品订单页面重新处理该订单。商品订单回收站页面如图3-26所示。 图3-26 商品回收站页面3.4 主要功能模块的业务流程3.4.1 商城购物流程图3-27 商城购物流程3.4.2 数据流图由于原始的数据流程图存在流程的不合理性以及操作的重复性,依照网上商城系统的购物流程,本系

33、统利用从总体到部分、逐渐细化的方法,整理了以下的数据流程图:第一层:图3-28 网上商城顶层数据流图第二层:图3-29 网上商城第二层数据流图第三层: 图3-30 网上商城第三层数据流图图3-31 网上商城第三层购物车管理数据流图 图3-32 网上商城第三层个人账号管理数据流图图3-33 网上商城第三层个人订单管理数据流图3.4.3 数据字典(1)关键部分数据项(2)数据流描述(3)数据存储3.4.4 数据库概念结构设计(1)系统主要功能E-R图: 图3-34 实体与实体之间的关系E-R注:实体集的属性已经部分省略(2)部分相关数据表表6-2 管理员信息表(tb_sys_admin)表6-3

34、购物车信息表(tb_cart_rec)表6-4 商品信息表(tb_goods_res)表6-5 商品分类信息表(tb_category_rec)表6-6 订单信息表(tb_order_goods)表6-7 订单动作信息表(tb_order_res) 4. 系统的测试与分析经过系统测试能够检测系统运行时性能可否达到使用的要求,同时也可验证系统中功能的正确性以及完整性等,系统测试是系统开发进程中不可忽视的环节。商城网站系统的测试和传统的软件测试方法以及要点有着很大的不同,商城网站的测试不仅需要验证到系统功能模块能否根据设计时的需求正常运行,并且也需测试该系统在不一样的浏览器中能否依然可以正常显示。

35、与此同时,还需要从终端用户的角度来测试其可用性以及安全性。4.1 测试的策略系统测试大致可分为三个阶段,分别是单元测试、集成测试以及系统测试。(1)单元测试,其测试重点是检测系统程序运行的准确性、用户界面的友好性、系统运行的时间以及存储空间的可行性等功能。该检查工作能够经过一定的测试方法来完成,测试方法总的来说能够分成两种:清楚某一系统必须具备的功能,能经过测试来验证各个功能模块能否可如常运行操作。比如,在测试系统中“商品查询”模块时,能够验证是否可以达到用户查询需求,该测试的方案就称作“黑盒测试”,又称“功能测试”;若非常了解模块的内部工作流程,经过查看软件内部的逻辑构造,对软件中的逻辑路径

36、实行覆盖测试,能够经过检测模块内部动作是不是根据设计时的要求正常运行。比如,在检测系统“商品分类”模块的过程中,可否能随时对各分类新增子分类,删除或者修改,把该测试方法命名为“白盒测试”。在系统测试过程中,本商城网站对各单元模块分别采用了这两种测试方法,测试的最后结果均达到了预期的目标要求。(2)集成测试就是在单元测试的基础上,将所有模块按照设计的需求组合成子系统或系统,来进行集成测试。这一过程主要是测试系统中的接口,检验接口之间通信规则是否合理,各程序之间的接口能否正常匹配,检测各子系统之间是否存在相互干扰。在集成测试过程中不仅能够验证系统设计目的所指定功能的正确性,还能够发现设计以及编码过

37、程中所产生的错误,本系统最终完成了集成测试,并且系统的动态性也能够达到预定的目的。(3)系统测试,指将系统真正投放到实际的应用环境中去,让参与系统测试不同的人员在现场使用部分特定的数据来对系统展开验收测试。系统测试的目的即是检测商城网站系统是否达到设计的目的,能够解决实质性的问题,满足用户的使用需求。本商城系统已经请同学模拟商城用户进行了系统测试,最终的结果得出系统能够达到设计的初始目标,完成了商城的全部运作流程。4.2 测试目标对本商城网站开展全方位的测试,迅速排除存在的问题,并做出修护改正,以保证商城系统能够符合用户的使用需求。验证系统的各个功能模块,排查各个功能模块运行时存在的错误并随即

38、修改,同时对网站实行分模块测试以及检测其运行性能的条件。与此同时,也需要对各个功能模块实行综合测试,便以提升商城网站系统的总体性能。4.3 测试需求分析测试需求分析是系统测试的首要工作,通过对系统进行需求分析,对其原始需求列表里给出的任一需求点,分析出需要实施测试的关键点。指向已确定的测试要点,分析出进行测试时所需的应对计划。需求分析的目的是实时找出系统中的不足并加以修正完善。本商城网站系统的测试需求分析是由两部分所组成,一部分是系统功能模块测试,另一部分是系统性能测试。功能模块测试的测试对象是系统中每个功能模块,当中包括商品模块、订单管理模块、商品管理模块、商品模块、权限管理模块、用户模块、

39、购物车模块等测试,对商城中上述各功能模块的测试内容如表4-1所示;测试需求的另一部分系统性能测试的关键点是系统的访问压力和系统页面的响应时间,应对在测试过程中所出现的问题并展开分析修改完善。表4-1 模块测试内容模块名称子模块功能测试商城前台功能测试用户模块注册检测登录检测添加收货地址商品模块商品分类商品展示查看商品信息购物车模块添加商品修改购买数量删除商品订单模块提交订单查看订单商城后台功能测试商品管理发布商品修改商品删除商品订单管理处理订单搜索订单权限管理分配权限4.4 测试结果由于本系统测试的项目数量较多,此章节仅展示出部分系统测试用例和对应的测试结果进行表明系统测试的大致情况。4.4.

40、1 用户模块测试(1)注册用户名检测,测试效果如图4-1所示。预计输入实际输入测试结果535355535355用户名输入错误,请重新输入!PyPy用户名输入错误,请重新输入!wangjunjiewangjunjie用户名已存在了,请换一个吧!zhangguorongzhangguorong输入正确。 图4-1 注册用户名检测(2)用户密码检测,测试效果如图4-2所示。输入密码确认密码测试结果20200202空密码确认不能为空!6677889911111111两次输入密码不一致,请重新输入123123123123123123输入密码正确。图 4-2 用户密码检测(3)用户登录检测,测试效果如图4

41、-3所示。输入账号登录密码测试结果空33898323账号不能为空!13232700755932489231账号或密码错误!1831927600566778899输入正确,登录成功。 图4-3 用户登录检测4.4.2 购物车模块测试(1)添加商品输入测试结果添加商品 购买的数量在购物车中增加一行商品记录,包含商品名称、数量以及价格等。添加购物车中已存在商品在购物车中已有的商品中增加数量。(2)修改商品数量输入测试结果购买数量(10)更改购物车中的商品数量,并修改相应的商品总金额。(3)删除商品输入测试结果删除商品从购物车中移除该商品信息,并修改相应的总计价格信息。4.4.3 订单管理测试(1)查

42、看订单系统管理员登录进入商城管理后台,点击“交易管理”中的“订单管理”进行查看所有买家所提交的订单信息,并且可以按照“订单状态”、“订单状态”等字段对订单进行升序或者降序的操作。最终测试结果:订单管理界面正常显示出所有订单信息,包括全部买家所提交的订单。按“时间类型”中的“下单时间”进行降序排序的测试结果如图4-4所示。图4-4 “下单时间”降序排序(2)搜索订单本系统提供了多种搜索订单的功能,如“订单号”、“用户名”、“订单金额”、“订单状态”等。测试结果:根据不同搜索字段,显示订单列表。搜索“未发货”的订单测试结果如图5-5所示。本商城后台系统“订单管理”模块中有多种搜索订单的选择,如“快

43、递单号”、“用户信息”、“订单号”等。测试结果:按照不一样的搜索字段,展示订单列表。按“订单号”进行搜索订单的测试效果如图4-5所示。图4-5 按“订单号”搜索订单信息(3)订单处理在商城管理后台中,若买家尚未对订单进行付款,系统管理员能够选择将该订单进行取消操作,可对订单进行“详情”查看操作,即可查看到订单中的详情页面信息,该测试效果如图4-6所示。图 4-6 订单详情信息5结语与展望5.1总结经过将近四个月的投入开发,在毕设指导老师的帮助以及用心指导下,结合了在校期间所学习的专业知识,查询了大量的资料和阅读了大量的参考文献,我最终得以在规定的时间范围内完成了MyStyle商城系统的设计,该

44、系统总体上实现了商城网站所需具备的各项功能。该商城系统操作简单,功能上前台实现了商品展示、商品分类、商品搜索、商品购物车以及用户的注册登录等;后台的交易管理、商品管理、管理员管理等功能,基本上可以满足网上购物的基本功能需求。本论文是从现今网上商城系统的现状展开研究,根据软件开发的一般过程,对商城系统进行了系统设计与分析、需求分析、数据库设计、详细设计和概要设计,然后对系统进行代码操作、测试等步骤。从这项目中我学到了很多有用的技术知识,这对我来说在理论和实践上都是一个很大的进步。可以说,这是一个从理论到实践的飞跃。从中掌握到的编程经验对我日后的工作以及学习都有着很大的促进作用。总而言之,通过这次毕业设计,我不仅锻炼了自己动手能力,能够熟练使用PHP语言和MySQL数据库,而且对ThinkPHP框架也更加熟悉。作为一名应届毕业生,我除了要完成毕设设计的任务以外,同时也即将要走出社会,面对社会中工作的挑战,经过这次所做的设计,我不但

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

当前位置:首页 > 期刊短文 > 信息管理

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

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