外卖小程序的研究与开发+ssm(lw+演示+源码+运行)

news/2024/10/9 13:40:45/

摘 要

随着科技的进步,微信小程序慢慢进入了生活当中,由于轻便快捷,方便使用,基于微信这个大平台,使得小程序飞速发展,趋于成熟,因此,针对用户对外卖点餐方面的需求,特开发了本外卖小程序

该外卖小程序分为小程序前端和Java后端系统,遵循数据前后端交互,相互分离。前端小程序应用官方提供的API文档,主要功能为查看外卖菜品信息、外卖点餐以及管理个人订单等。后端系统则是由Java语言实现,基于B/S结构,使用MySQL数据库开发,使得管理员、商家后台界面简单整洁,便于管理员和商家使用和管理。

本外卖小程序拥有界面简洁、操作简单易懂,管理方便,功能齐全等优点,具有很高的应用价值。

关键词:外卖小程序;Java语言;B/S结构;MYSQL数据库


ABSTRACT

With the advancement of technology, WeChat Mini Programs have slowly entered life. Because they are light, fast and easy to use, based on WeChat’s large platform, Mini Programs have developed rapidly and become more mature. Therefore, in response to the needs of users for ordering food, special Developed this takeaway applet.

The takeaway applet is divided into an applet front-end and a Java back-end system, which follow data front-end and back-end interactions and are separated from each other. The API document officially provided by the front-end applet application mainly functions to view the information of takeaway dishes, order takeaway meals, and manage personal orders. The back-end system is implemented in Java language, based on the B/S structure, and developed using MySQL database, making the back-end interface of administrators and merchants simple and tidy, which is convenient for administrators and merchants to use and manage.

This small takeaway program has the advantages of simple interface, easy to understand operation, convenient management, complete functions, etc., and has high application value.

Keywords: Takeaway applet; Java language; B/S structure; MYSQL database


目 录

1 绪 论1

1.1课题背景1

1.2设计原则1

1.3论文组织结构2

2系统关键技术3

2.1微信小程序3

2.2微信小程序API接口3

2.3 JavaScript简介3

2.4 MYSQL数据库4

3系统分析5

3.1可行性分析5

3.1.1 技术可行性5

3.1.2经济可行性5

3.1.3操作可行性5

3.1.4时间可行性5

3.2系统性能分析6

3.3 系统功能分析6

3.4系统流程分析8

3.4.1注册流程8

3.4.2登录流程9

3.4.3添加信息流程10

4系统设计11

4.1系统设计要求11

4.2系统结构设计11

4.3系统顺序图设计12

4.3.1 登录顺序图12

4.3.2 注册顺序图12

4.4数据库设计13

4.4.1数据库概念结构设计13

4.4.2数据库逻辑结构设计15

5 系统的实现18

5.1微信端功能模块的实现18

5.1.1注册登录界面18

5.1.2首页界面18

5.1.3商家界面19

5.1.4菜品详情界面20

5.1.5购物车界面21

5.1.6我的订单界面22

5.1.7用户信息界面23

5.2服务端功能模块的实现24

5.2.1服务端登录界面24

5.2.2用户管理界面25

5.2.3商家管理界面25

5.2.4菜品信息管理界面26

5.2.5菜品分类管理界面27

6系统测试28

6.1测试任务28

6.2测试的原则28

6.3测试的目标29

6.4测试方法30

6.5测试结论30

结 论31

参考文献32

谢 辞33

1 绪 论

1.1课题背景

随着智能手机的逐渐普及,手机已经融入到了人们快节奏的生活当中去。现今各种智能手机层出不穷,各类基于手机平台的软件应运而生,其中,在众多交流软件中,微信备受人们青睐,近年来,微信发展规模越来越大,越来越多的人开始使用微信,目前智能手机系统的普及,人们手机上基本都有了微信,据调查发现,中国约90%的人选择使用微信,这使得基于微信小程序的系统应运而生,为用户提供便利。

伴随着餐饮业的不断发展,餐饮服务已经成为国民生活不可缺少的一部分。餐饮行业的发展,带动了国民经济的发展做出了巨大的贡献。当前,餐饮大环境正在朝着高品质,高服务,新鲜化的方向发展。伴随着80后、90后消费能力的提升,年轻人的消费能力逐渐成为餐饮消费领域的主力军。当前中小型餐饮行业的商家,越来越将目光锁定到年轻人身上,因为年轻人的消费能力比较强,可以带来较高的利润,占领着市场更大的份额。在微信发展的前提下,为了提高餐饮行业营业额,又满足用户微信平台外卖点餐的需求,开发一套外卖小程序已经刻不容缓。

1.2设计原则

在开始开发项目之前,必须要先考虑项目的实用性、科学性,以及该项目是否能够真正让用户受益并尽可能的发挥项目的作用。因此,在开发前,通过以下几条原则对项目进行判断:

(1)可行性原则。项目需要保证经济可行性和技术可行性,这包括了项目在浏览端、服务端等方面上的经济和技术上是可以达成的。

(2)适应性原则。项目要保证可维护性和可扩展性,这是每个非短期项目都需要考虑的,并且不论是维护还是扩展,都必须要建立在适应用户的正常需求的基础上。

(3)安全性及保密性原则。要充分保证用户信息的安全性和保密性,不能因为开发上的疏忽,导致用户的信息泄露。

(4)系统工程原则。为了确保项目的整体性,在项目调查、项目分析、项目设计、项目开发的过程中,都需遵从项目工程的方法和步骤逐步进行。

(5)统一规划、分期实施、逐步完善原则。项目开发的过程中,要按照规划、分期实施,特别是要注意在项目开发过程中要有条理,从点到面,一步步完善,不要贪图进度,要循环渐进的对项目进行开发。

1.3论文组织结构

第一章主要是简单的介绍下设计本网站的研究背景和设计原则,在这一章里主要是让大家了解下我的设计的前因后果,为接下来我的其它章节做铺垫。

第二章主要是介绍在设计过程中所涉及到的技术。

第三章主要是介绍下设计这个网站所需要的需求以及我们的功能需求分析,因为只有更好的分析清楚我们的功能需求才能更好的完成我们的设计。

第四章网站系统设计,主要介绍了网站结构的设计以及数据库设计,这一章主要是为了能让大家更好的了解网站的一些基本设计信息。

第五章系统的实现,介绍了系统每个模块的设计与实现,让大家能清晰的了解系统的主要功能。

第六章系统的测试,这章主要是测试下各个部分每个功能是否能用,看下是否有错误。


2系统关键技术

2.1微信小程序

微信小程序,简称小程序,英文名Mini Program,是一种全新的连接用户与服务的方式,可以快速访问、快速传播,并具有良好的使用体验。

小程序的主要开发语言是JavaScript,它与普通web的开发有很多相似之处。小程序和普通网页开发并不是相同的东西,是有差异的。网页开发的渲染线程和脚本线程是互斥的,而在小程序中,确实分开的,分别在不同的线程之中运行。网页开发的工作者可以运用各种浏览器暴露出来的DOM API,进行DOM选中和操作,但小程序不行,它并没有一个完整的浏览器对象,因此缺失DOM API和BOM API。这样的差别使得前端开发中经常用到的一些库是无法在小程序中运行的。另外,网页开发的工作者在开发网页时所要面对的环境是在各式各样系统上运行的各式各样的浏览器,,而小程序只,只需面对iOS和Android这两道操作系统下的微信就足够了。

小程序和传统的APP相比,有着开发成本更低,获客成本更低,开发周期更短,发展空间更大等的优点。不过,为了体现“用完即走”、“无需安装”等理念,小程序的功能、性能还有大小都受到了制约,可以说是各有利弊。

2.2微信小程序API接口

微信小程序API接口是腾讯公司为了微信小程序和微信公众号提供的接口文档,里面包含了各种需要使用的接口技术[7],例如本项目用到的获取微信用户信息(wx.getUserInfo)、蓝牙通讯传输功能、网络请求(wx.request)、定位功能等,总的来说,小程序API是满足一个程序开发的大部分接口。

2.3 JavaScript简介

JavaScript是一种在现在都极为流行极为热门的脚本语言,最早是在HTML网页上被使用,使用JavaScript,我们可以给HTML网页添加更是各样的动态功能,并且给这些功能设置好不同的触发动作,通过用户在浏览器上的各种操作进行触发。

随着时代的发展,JavaScript的用途也越来越多,例如:将动态文字嵌入到HTML页面之中,读写HTML元素、在数据被提交到服务器之前检验数据等等。而且,不同于服务器端脚本语言,JavaScript并不依赖于操作系统,无需访问数据库,只需要浏览器的支持,有效的减轻了服务器的负担。

2.4 MYSQL数据库

MySQL 是关系型数据库管理系统的代表, 因为MySQL是其免费开源的,而且MySQL的功能已经足够用对于学习和中小型企业来讲,所以开发中小型网站都会选择MySQL作为网站的数据库。[5]

MySQL具有开放性,它是一种关系型数据库管理系统,并且它的源代码可以被大众所熟知[3]。由于MySQL是开放源代码的,因此,只要经过授权就可以在自己需求的基础上对其进行修改。MySQL因为其固有的特点而备受关注,它具有很强的适应性,并且十分可靠,查询速度快。MySQL安装起来非常方便,且数据存储量大,不需要事务化处理。Sql语言拥有很多的方法,在项目中编写sql语句时使用起来是非常方便的,不会像其他语言那样需要编写更多的语句。正因为MySQL使用sql语言进行数据库管理,所以它收到了大多数程序员的热爱。

3系统分析

3.1可行性分析

在软件开发第一阶段时,就应该对整个系统进行一次可行性分析。在开发进行过程中,并不是所有的问题都能在预计的范围内解决。通过可行性分析可以提前从中发现问题,解决问题,从而避免财力、人力和物力的浪费。

3.1.1 技术可行性

本外卖小程序基于微信平台,采用微信开发者工具和MYSQL数据库进行开发设计,作为计算机专业学生,在学校期间就接触到许多关于编程方面的知识,当然也包括各种编程软件,对他们的了解度也比较系统,所以技术开发上面还是有一定把握。

3.1.2经济可行性

经济可行性主要是研究和分析系统的投入和产出的关系,非常明了问题不能产出大于投入。由于自己本身就是学生,还没有正式参加工作,金钱上面一直都处于缺乏状态。所以在开发程序过程中,我是不会花太多经济成本在上面的。针对开发软件和数据库,还有界面设计等在百度上面就可以直接下载,然后根据各种安装视频进行安装,这些资源都是免费的,程序编码阶段使用的源代码在百度上面可以轻松获得,在有网络的环境下就能下载下来,不需要支付任何费用,经济成本很低。所以系统在开发人力、财力要求不高,具有经济可行性。

3.1.3操作可行性

在设计之初,我在网上参考了许多基于微信小程序的界面布局设计,发现该系统界面展示比较简单,功能罗列齐全,操作流程简单明了,系统用户不用担心不会操作,系统各个功能模块都会有相应的提示,一看就明白,实在不知道的话,稍微指点就能上手,上手速度很快,时间不会耽误太多。

3.1.4时间可行性

从2020年11月份我们在学校就没有课程了,同学们大部分选择找工作实习了,我也是在其中。一边找工作的同时,一边忙着完成毕业设计工作。对于我本人来讲,目前的情况是白天我要上班参加实习工作,只有晚上我才有时间完成论文编写工作。论文答辩是在2021年5月份左右,将近半年时间来完成毕业设计,时间上还是很充分。

经过上面的分析,此次开发的系统从经济上、从技术上、从操作上、从时间上考虑都能过关。说明自己要开发的外卖小程序可行性是完全可行,操作简单,时间、金钱上面毫无压力,该系统开发是完全可行。

3.2系统性能分析

一个良好优秀的程序不仅仅是需要能够实现它的基本功能,还需要保证系统的性能,在开发本系统时要求达到以下几点性能方面的需求。

(1)良好的操作体验。一款优秀的软件,不仅仅是功能强大,还需要让使用者有一个良好的体验。在程序开发的过程当中开发者需要无数次的去模拟使用者可能会出现的操作,尽可能地将每一种用户操作都考虑到。从而做到简化操作,提升用户体验,避免繁杂的操作使得使用者对于应用程序产生负面印象,有时候也能提供更加智能、一键化操作提升使用者对软件的好感。

(2)创新性。更加创新和新颖的软件内容。更多新颖的应用内容能在极大程度上保留住用户,每个人都有很大的好奇心,看到一款新的应用程序,用户第一次可能会出于好奇心而下载使用,但这却无法保留住这批用户,需要应用程序不断的有更加创新的内容或更加新颖的创意才能吸引住用户持续的使用保留应用,虽然可以通过一些推广平台来推广,但是如果一款应用内有任何新意,用户也是会很快卸载掉的,所以一定需要软件能有很新的东西才行,有时候是新颖的内容,也可以是很创新的功能操作,也可以在软件内有一些活动都可以。

(3)良好的稳定性。将使用软件过程中出现的意外情况降到最低。这里的意外是指在用户体验使用程序的时候出现的问题,比如程序未响应问题、程序闪退崩溃等等问题,所以尽力要将程序多多测试几遍使得发生这种情况的概率降到最低。

3.3 系统功能分析

本外卖小程序主要满足3种用户的需求,这3种用户分别为管理员、商家以及用户,下面将对这三类用户分别进行功能需求分析方面的阐述。

(1)管理员可登录系统后台,对系统进行全面管理,管理员登录主要功能模块包括个人中心、用户管理、商家管理、菜品信息管理、菜品分类管理、系统管理以及订单管理。管理员用例如图3-1所示。

图3-1 管理员用例图

(2)商家登录后主要功能模块包括个人中心、菜品信息管理、菜品分类管理以及订单管理。商家用例如图3-2所示。

图3-2 商家用例图

(3)用户通过微信客户端可进入本外卖小程序,注册登录后主要功能模块包括首页、商家、菜品信息以及我的(我的收藏管理、用户充值、购物车以及我的订单)。用户用例图如图3-3所示。

图3-3 用户用例图

3.4系统流程分析

3.4.1注册流程

未有账号的用户可进行注册操作,注册流程图如图3-4所示。

图3-4 注册流程图

3.4.2登录流程

为了保证系统的安全,要使用本系统必须进行登录操作,用户登录流程图如图3-5所示。

图3-5登录流程图

3.4.3添加信息流程

在添加信息时,系统编号自动生成,系统首先判断添加的信息是否合法,合法则添加成功,反之重新输入。添加信息流程图如图3-6所示

图3-6 添加信息流程图


4系统设计

4.1系统设计要求

(1)软件功能清晰明了,简化用户操作,提升使用者体验,减少下拉菜单这种降低体验的操作。

(2)软件的功能要尽量完整,也要全面。要求能够实现查看菜品、外卖点餐等。

(3)经常的在以后版本更新完善软件,使得软件保持一个新鲜度,也可以做一些活动来促进用户使用软件。

(4)减少软件使用过程中出错,做好优化,遵循开发逻辑,降低bug的产生率以提升用户体验。

4.2系统结构设计

系统的设计和划分是系统的核心研究问题,以确定整体结构和功能模块。该系统的结构化设计的思想,是自顶向下的方式将系统分成若干个子系统,以及反过来的子系统分成模块,其被划分成子模块,层划分各计算机可执行模块可迄今用作一个单独的程序。

本外卖小程序结构图如图4-1所示。

图4-1 系统功能模块图

4.3系统顺序图设计

4.3.1 登录顺序图

用户在登录时,首先进入系统登录窗口,用户需要输入用户名和密码,点击登录按钮进行登录操作,系统会以用户名和密码为参数在数据库中进行登录信息的验证,验证成功则登录成功,进入对应用户主界面。登录模块顺序图如图4-2所示。

图4-2 登录顺序图

4.3.2 注册顺序图

未有账号的用户可进入注册界面进行注册操作,在注册界面输入注册信息,点击提交按钮,系统首先判断用户名是否存在,存在则提示重新输入,不存在则验证注册信息是否正确,正确则在数据库中添加注册数据,提示注册成功。用户注册模块顺序图如图4-3所示。

图4-3 注册顺序图

4.4数据库设计

数据库技术是资源管理最好的方式。数据库设计可以创造出属于自己的良好的设计方式,建立系统。它可以使系统准确的把数据库中的信息提取出来并且加以应用来满足所有人的需要。数据库的选择要考虑多方面的因素:如用户更适合使用哪种数据库;具体的功能比较;各自的性能优劣分析;相互之间的兼容性;平台的支持应用性;相关的技术支持。本设计采用 MySQL,更加适合该系统的完成。

4.4.1数据库概念结构设计

数据库概念结构设计通俗来说就是把前面所做的需求分析报告转变为抽象的信息结构,数据库概念结构设计相比数据模型要更加稳定、抽象和独立。它的特点有方便修改、能够容易理解、转换成层次、关系等数据模型变得更加容易,对现实世界反映客观真实充分等。数据库设计这块,在描述概念模型工具的选择上通常是用E-R模型(实体-联系模型)表现出来。E-R模型这个数据建模工具它被广泛的使用在数据库设计中,它是一种针对用户的表达方式,没有任何DBMS约束。构成该模型的成分有属性、实体集及联系集。矩形框表示实体集,椭圆形表示属性,菱形框表示实体与实体的联系。下面我们展示外卖小程序的主要的实体图。

1、管理员实体属性图如图4-4所示

图4-4 管理员实体属性图

2、菜品实体属性图如图4-5所示

图4-5 菜品实体属性图

3、订单实体属性图如图4-6所示

图4-6 订单实体属性图

4、商家实体属性图如图4-7所示

图4-7 商家实体属性图

5、用户实体属性图如图4-8所示

图4-8 用户实体属性图

4.4.2数据库逻辑结构设计

数据库的逻辑结构的设计需要将前面概念设计得到的E-R图转换成关系模型。接着就是优化关系模型,逻辑结构设计的过程表现如下

图4-4 逻辑结构设计的过程

优化关系模型有许多方式,这些方式包括了对数据之间的依赖进行确定;处理关系模式间的数据依赖,一些多余的联系需要及时清理;要明白和界定各个关系模式在第几范式;关系模式的分解或合并处理也是必要的。设计中对关系模型的优化就可以按照上述提示进行操作。

本次开发的外卖小程序它的数据结构就比较清晰明了。开发出来外卖小程序的后台数据库是由许多的数据表组成的,下面我们将选取一部分数据表进行具体描述:

表4-1 users管理员信息表

字段名称字段意义字段类型字段长度是否主键能否为空
id编号bigint20
username用户名varchar100
password密码varchar100
role角色varchar100
addtime添加时间timestamp

表4-2 caipinxinxi菜品信息表

字段名称字段意义字段类型字段长度是否主键能否为空
id编号bigint20
addtime添加时间timestamp
caipinmingcheng菜品名称varchar200
caipinfenlei菜品分类varchar200
tupian图片varchar200
caipinjieshao菜品介绍longtext
shangjiazhanghao商家账号varchar200
shangjiamingcheng商家名称varchar200
dianpuming店铺名varchar200
thumbsupnum赞数int11
crazilynum踩数int11
clicktime`最近点击时间datetime
clicknum点击次数int11
price`价格float

表4-3 orders订单信息表

字段名称字段意义字段类型字段长度是否主键能否为空
id编号bigint20
addtime下单时间timestamp
orderid订单编号varchar200
tablename商品表名varchar200
userid用户编号bigint20
goodid商品编号bigint20
goodname商品名称varchar200
picture商品图片varchar200
buynumber购买数量int11
price价格float
discountprice折扣价格float
total总价格float
discounttotal折扣总价格float
type支付类型int11
status状态varchar200
address地址varchar200

表4-4 shangjia商家信息表

字段名称字段意义字段类型字段长度是否主键能否为空
id编号bigint20
addtime添加时间timestamp
shangjiazhanghao商家账号varchar200
mima密码varchar200
shangjiamingcheng商家名称bigint20
dianpuming店铺名bigint20
dianpudizhi店铺地址varchar200
lianxiren联系人varchar200
lianxifangshi联系方式varchar200
shangjiatupian商家图片varchar200
xiuxishijian休息时间varchar200
shangjiajieshao商家介绍longtext
money余额float

表4-5 yonghu用户信息表

字段名称字段意义字段类型字段长度是否主键能否为空
id编号bigint20
addtime添加时间timestamp
zhanghao账号varchar200
mima密码varchar200
xingming姓名bigint20
nianling年龄bigint20
xingbie性别varchar200
shouji手机varchar200
zhaopian照片varchar200
money余额float

5 系统的实现

5.1微信端功能模块的实现

5.1.1注册登录界面

未有账号的用户可进行注册操作,注册后可进入登录界面进行登录系统,注册登录界面展示如图5-1所示。

图5-1 注册登录界面图

5.1.2首页界面

用户通过微信平台打开本外卖小程序,登录后进入了系统的首页,在首页用户可查看所有菜品,首页界面展示如图5-2所示。

图5-2 首页界面图

5.1.3商家界面

用户在商家界面可查看所有商家,并可选择查看详情,商家界面展示如图5-3所示。

图5-3 商家界面图

5.1.4菜品详情界面

用户可选择菜品查看菜品详情信息,并可进行加入购物车和立即购买操作,菜品详情界面展示如图5-4所示。

图5-4 菜品详情界面图

5.1.5购物车界面

用户在购物车界面可查看购物车已有菜品信息,并可对其进行删除、修改数量或者结算操作,购物车界面如图5-5所示。

图5-5 购物车界面图

5.1.6我的订单界面

用户在我的订单界面可查看个人订单信息,我的订单界面如图5-6所示。

图5-6 我的订单界面图

5.1.7用户信息界面

用户可修改个人信息,用户信息界面如图5-7所示。

图5-7 用户信息界面图

5.2服务端功能模块的实现

5.2.1服务端登录界面

管理员和商家要想进入对于角色后台必须进行登录操作,服务端登录界面展示如图5-8所示。

图5-8 服务端登录界面图

5.2.2用户管理界面

管理员可进行查看、修改和删除用户信息,用户管理界面展示如图5-9所示。

图5-9 用户管理界面图

5.2.3商家管理界面

管理员可增删改查商家信息,商家管理界面展示如图5-10所示。添加商家界面展示如图5-11所示。

图5-10商家管理界面图

图5-11添加商家界面图

5.2.4菜品信息管理界面

商家可增删改查菜品信息,管理员可查看、修改和删除菜品信息,菜品信息管理界面展示如图5-12所示,添加菜品信息界面展示如图5-13所示。

图5-12 菜品信息管理界面图

图5-13 添加菜品信息界面图

5.2.5菜品分类管理界面

商家可增删改查菜品分类信息,管理员可查看、修改和删除菜品分类信息,菜品分类管理界面展示如图5-14所示。

图5-14 菜品分类管理界面图


6系统测试

6.1测试任务

完成了程序的开发,少不了程序的测试工作,这个部分是程序开发的尾声,工作强度不是很大,毕竟最难的编码过程已经成为过去。程序的测试这部分它主要还是检查自己开发的程序功能是否得到了实现,程序的界面风格是否能被用户接受,程序的界面布局和操作的流程是否合理等问题,都能够经过程序的测试检查出来。

当我们的软件开发完成后,还没有给用户使用之前,程序开发人员需要做的工作就是要去发现开发出来的软件是否存在错误,一旦发现要及时作出修改。

程序在测试过程中需要做的任务有下面几点:

(1)测试程序就是需要在程序中发现Bug,这是最基本的任务

(2)看一看所开发出来的软件在功能上面有没有缺陷

(3)开发出来的软件质量上面有没得保障

(4)系统使用者对系统功能的需求要一直不断的查看

6.2测试的原则

程序员在软件测试过程当中也是有一定的原则遵循,下面简单介绍下软件测试的原则:

(1)测试的用例部分应该包括录入的数据跟与之对应的结果输出这两方面内容

在还没有进行测试之前,我们要合理选择Test case(测试用例),测试用例它能够反映出程序员开发的程序的一些问题。所以在操作中需要记录测试中录入的数据和与之相对应的结果输出,这样的描述更能直观反映出问题

(2)程序开发人员要做到早早地进行程序测试和测试过程伴随始终。

这样做是有道理的,如果软件开发出来了,再让测试人员从头到尾进行程序测试,一是时间上面可能来不及,因为用户急着要程序产品,二是测试中一旦发现问题,修改起来也比较麻烦,通常是程序的各个文件都要相应作出修改。所以程序开发人员还是要做到一边编写程序,一边进行测试,把问题解决在早期,避免许多错误出现

(3)程序开发人员最好不要测试自己开发的程序

生活中的我们经常能够看清楚某人的优缺点,但自身的优缺点就不能看出来。所以这个道理对于程序员也适用。程序员自己开发的程序自己是检查不出来的,所以程序开发中有条件的话还是需要专门的测试人员来完成测试工作,发现出来的问题由程序编写人员修改

(4)测试用例的设计需要包含输入条件的合理性和不合理性两方面内容

程序要正常跑起来还是需要用户输入的信息要合理,不是想输入什么就行,它是有参考标准的。要是随便乱输入信息程序就没法工作运行了。一般来说,测试中输入不合理条件进行测试可以发现更多的程序错误

(5)错误群集部分需要当成重点测试

程序测试部分,遇到某些错误很多的一段程序代码,需要测试人员进行重点测试,要保证投资在测试部分的效益

(6)坚决杜绝测试工作的随意性,必须按照测试计划严格地执行

测试工作的每一项内容的测试都有相应的计划安排,我们必须严格按照要求进行测试工作。测试的相关内容、选择测试的用例是哪种、测试工作的进度如何、测试怎么进行的等内容,当然还包括测试的评价标准、怎么样跟踪测试过程的等内容,需要专门的规定,不能随便解释

(7)测试出来的任意一个结果需要全面检查

测试出来的任意一个结果再进行全面检查是对测试过程负责的表现,杜绝小错误再次出现

(8)测试结果出具的相关资料文档要认真仔细保存

系统维护上面根据系统测试报告来操作可以省去不必要的工作,测试中形成的最终分析报告和测试用例等内容是千万不要丢失的

6.3测试的目标

程序测试中它的目的也有下面几点阐述:

(1)软件质量可不可靠这是相当的重要,一方面就是看这个程序是不是做了你想做的事,另一个方面就是看看程序做你想做的事情时,处理的方式正不正确

(2)测试工作最终还是要形成测试报告反馈给系统使用者和开发人员,毕竟这些信息是程序风险评估的依据

(3)程序测试虽然是看程序这个产品具有的基本内容是否符合要求,但是程序产品本身的问题可以看出来程序员在开发程序时的一些错误,因此,这个测试步骤反映出来的问题,它能及时规范程序开发过程中出现的问题

6.4测试方法

软件测试最常见的莫过于白黑盒测试,就是白盒测试和黑盒测试。通常把程序测试的对象当做打开的能看见的盒子就属于白盒测试方法,白盒测试能够反映出来程序的内部是如何工作的,利用这个办法可以检测出来我们开发的程序是不是按照说明文档的描述进行工作的,可以看出程序的任何通路是不是能够按照预定的要求正确进行的。软件验证还是用白盒测试比较有效,像基路测试以及逻辑驱动采用白盒测试也是很有效的方法。Jcontract、C++ Test和CodeWizard等工具就是白盒测试常用工具。黑盒测试就跟白盒测试的内容不一样,它还是注重软件的规格,不需要知道软件内部是如何进行工作的,这样的测试让软件使用者觉得程序工作过程是不透明不清楚的,感觉就像是一个黑盒子。测试过程中始终站在用户的角度使用软件,发现软件存在什么缺点,不是注重程序是怎么实现的测试方法。AutoRunner和winrunner是黑盒测试需要用到的常用工具。

6.5测试结论

通过对外卖小程序的上述的测试的结果进行详细的分析,我们发现此次开发的外卖小程序符合用户的需求。系统使用者对功能的需求都能得到实现。系统操作起来很简单,运行流畅,程序质量也是有一定的保证,可以投入使用。

总体说来,软件通过测试。

结 论

通过这段时间的学习与操作,终于做完了这次毕业设计,在这次毕业设计中碰到了许多困难,在开始的时候先是没有头绪,再是畏畏缩缩不愿动手,然后硬着头皮上去查了资料,学习了网课,对自己的毕业设计帮助都很大,在通过自己的努力查阅资料和老师、同学们的帮助下,终于打破重重难关,完成了此次毕业设计。

大学学了这么几年,到毕业时总得带来作品来体现我们大学期间学到的各种知识点。当然,作为计算机专业的学生,开发软件就是提交作品的最好方式,软件的开发其实是一个很艰辛的过程,这个对于我这个平时学习不是很努力,专业知识不够扎实的学生来说,困难程度难以想象。在论文任务启动时,我们这组的同学几乎都有自己的论文思路,而我却一筹莫展的站在他们中间听着指导老师对论文及程序提出的各种要求,学院还有专门的论文写作要求文档,看着这一切我更是一头雾水,好在指导老师对我的耐心指导与建议,我开始有了头绪,为了补充自己所学的不足,我从网上找来了许多资料来学习与研究,图书馆成了我每天必待的场所,半个月下来,我对程序开发流程,开发源代码的理解,程序开发的各种技术都有了比较系统专业的了解,软件功能设计和系统的架构我也通过相关书籍进行了知识拓展,数据库设计上面,经过指导老师细心的指导,加上自己勤奋的学习,很顺利的解决了这个难题。总的来说,自己独立开发软件程序,可以帮助自己学到更多未知的东西,这些知识点别人是偷不走的,自己能力得到提高,心态也变得更好,遇到困难知道上网查找解决办法,养成了自我学习知识的习惯。这些习惯对自己今后的工作帮助不小,很感谢这次的论文写作,帮助我更快地成长,所学到的东西比在大学期间学到的知识点收获更多。

毕业设计可算是完成了,心里总有一些空落落的,明白自己即将从学校这个平台离开,成为社会人了,我深刻的理解到了毕业设计是链接了大学学习和工作的大道,这次的设计也为工作打下了良好的基础,今后也许还会有更严峻的挑战,但经过了这次的努力学习,完成了毕设,我相信自己以后能面对且处理好各种大风大浪,将自己的学习和经历转化为精神的食粮,为了自己的目标和理想努力奋斗。


参考文献

[1] 匡文波. 中国微信发展的量化研究[J]. 国际新闻界. 2014(05)

[2] 李鑫. 微信平台上的品牌营销策划研究[J]. 中小企业管理与科技(上旬刊). 2014(01) [3] 杨宁. 论微信公众平台在教辅出版中的应用[J]. 编辑之友. 2014(01)

[4] 付识睿. 微信公众平台在电视媒体中的发展现状[J]. 大众文艺. 2013(24) [5] 左佩佩. 微信营销存在的问题探析[J]. 中国商贸. 2013(36)

[6] 弓萍. 利用微信公众平台做好服务营销[J]. 现代营销(学苑版). 2013(10)

[7] 梅阳. 传统科技期刊微信公众平台的建设与经营[J]. 传播与版权. 2013(07)

[8] 张洪忠,朱蕗鋆. 微博、微信对传统媒体内容使用的影响[J]. 新闻记者. 2013(12) [9] 赵振祥,王洁. 微博与微信:基于媒介融合的比较研究[J]. 编辑之友. 2013(12)

[10] 刘世鹏.微信时代传统媒体面对的新趋势[J]. 全国商情(理论研究). 2013(22)

[11] 欧阳苗.在传播学视角下看微信传播模式利与弊[J]. 科技传播. 2014(22)

[12] 宋思斯.微信营销发展现状及对策[J]. 合作经济与科技. 2014(19)

[13] 向芹,魏华飞.利用微信平台,做好品牌管理[J]. 考试周刊. 2014(76)

[14] 匡登辉,郝晋清,柯岚馨.基于微信的学科服务营销研究[J]. 菜品馆工作与研究. 2014(09)

[15] 肖涧松.新媒体时代的微信营销策略研究[J]. 商业时代. 2014(23)

[16] 沈瀛.smart如此撬动6亿微信用户![J]. 成功营销. 2014(08)

[17] 么志丹.微信营销趋势分析[J]. 经营管理者. 2014(22)

[18] 张聪,刘晓宇,张志成.浅析微信出版[J]. 科技与出版. 2014(07)

[19] 张秋瑰.弱关系与强应用:社会化媒体的出版实践[J]. 出版发行研究. 2014(06)

[20] 庄宝玉.微信的网络营销模式探究[J]. 西部广播电视. 2014(11)


谢 辞

毕业设计这是我们大学四年来的最后一次作业了,当然,这也是我们充分运用所学知识来展现我们的能力的作品,不管是大学四年来还是仅仅是因为毕业设计所包含的我身边的人,我都要致以崇高的感谢,感谢你们帮助我,在我无助,失落的时候。

某某老师,我的指导老师,当然,在大学四年来教我们课程最多接触也最多的老师,风趣幽默,最重要的是他教会了我们怎么去学会思考。看到一个问题,学会举一反三,学会怎么去解决。他让我们明白,学东西,不仅仅是学知识,更重要的就是学方法。

在我论文选题时,他给了我许多建议,在收集资料开始写作时,他也耐心地提供了指导,让我明白我的论文写作的一个大体的方向。总之,无论处在论文写作的哪个阶段,他都给予了我各种帮助,一方面在学校他要自己给学生上课,另外一方面,他还要给我们这些毕业生提供论文指导,有时十一二点还没睡,还在群里说明一些论文注意事项。说实话,我自己就写论文,我已经感觉很累了,可他指导的不仅仅我一个人。所以,我最最要感谢他,**老师,您辛苦了!谢谢您,要不是你时刻督导我们写论文,我估计我都不知道我给我们这个小组拖后腿了多少。也不可能完成论文这么顺利。资源利用上也不可能这么轻松。

总之,所有的老师们,同学们都应该被感谢,正因为您们的帮助,我才能越走越远。


http://www.ppmy.cn/news/1536662.html

相关文章

UE5运行时动态加载场景角色动画任意搭配-角色及动画(一)

通过《MMD模型及动作一键完美导入UE5》系列文章,我们可以把外部场景、角色、动画资产导入UE5,接下来我们将实现运行时动态加载这些资产,并任意组合搭配。 1、骨骼动画复用 1、大部分模型骨骼是不通用的,比如这些裙子也是有骨骼的,属于模型特有的,但是对于动画来说,很多…

“网络安全等级保护测评入门:基础概念与重要性“

网络安全等级保护测评(简称“等保测评”)是依据国家网络安全等级保护制度,对信息系统安全等级进行评估和评定的过程。它是提高信息系统安全性、保障信息安全的重要手段。以下是关于等保测评的基础概念与重要性的详细解读: 一、等…

go发送邮件:在Go语言中实现发邮件的教程?

go发送邮件的教程指南?怎么使用Go语言发送电子邮件? Go语言,作为一种简洁、高效且并发性强的编程语言,自然也提供了丰富的库来支持邮件发送功能。AokSend将详细介绍如何在Go语言中实现发送邮件的功能,帮助你快速掌握这…

招联金融秋招内推2025

【投递方式】 直接扫下方二维码,或点击内推官网https://wecruit.hotjob.cn/SU61025e262f9d247b98e0a2c2/mc/position/campus,使用内推码 igcefb 投递) 【招聘岗位】 后台开发 前端开发 数据开发 数据运营 算法开发 技术运维 软件测试 产品策…

Linux 设置虚拟内存以及启用的条件

在Linux系统中,虚拟内存(通常被称为交换空间)是硬盘上的一部分,用于在物理内存(RAM)不足时暂时存储进程数据。虚拟内存的设置对系统性能有重大影响,但是有时候虚拟内存不一定需要启用或者启用的…

【媒体邀约】为品牌发声,为企业背书

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体宣传在品牌建设和企业发展中扮演着至关重要的角色,它不仅是传递信息、建立品牌认知的手段,更是为品牌发声、为企业背书的重要途径。以下详细阐述了为什么媒体…

LeetCode题练习与总结:生命游戏--289

一、题目描述 根据 百度百科 , 生命游戏 ,简称为 生命 ,是英国数学家约翰何顿康威在 1970 年发明的细胞自动机。 给定一个包含 m n 个格子的面板,每一个格子都可以看成是一个细胞。每个细胞都具有一个初始状态: 1 即…

java基础(1)

文章目录 Java基础(1)1.注释2.字面量3.关键字4.标识符5.数据类型转换5.1自动类型转换5.2表达式的自动类型转换5.3强制类型转换 6.运算符7.接收用户输入8.分支结构8.1 if分支8.2 switch分支 9.循环结构9.1 for语句9.2 while循环 10.生成随机数11.数组11.1…