基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx

上传人:b****6 文档编号:17476953 上传时间:2022-12-01 格式:DOCX 页数:28 大小:1.68MB
下载 相关 举报
基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx_第1页
第1页 / 共28页
基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx_第2页
第2页 / 共28页
基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx_第3页
第3页 / 共28页
基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx_第4页
第4页 / 共28页
基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx

《基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx(28页珍藏版)》请在冰豆网上搜索。

基于高校教务系统软件测试设计与实施毕业论文Word文档下载推荐.docx

因此大学生也偏向使用网络,使用线上的各种服务。

图1-119年使用分布情况

图1-2近年来使用人数

互联网在高校,企业中的应用也早已开展。

当前高校教务系统已相当成熟,协助大学生进行在线选课,查课表,报名考试,查成绩等功能。

方便快捷,使得当代大学生离不开教务系统的使用。

为了保障教务系统的运行,体验效果良好,离不开对系统的测试。

测试一定程度上保护了软件的质量。

教务系统在上线前一定经过测试环节,但测试不是一蹴而就的,在某个阶段测试达到需求,可下一阶段或经过时间推移,就有出现bug或不能满足需求,体验差等问题的可能。

测试应伴随在系统的整个生命周期上,为系统的质量保驾护航。

1.2国内外的现状分析

1.2.1国内教务系统使用现状

随着教育和互联网信息技术的发展壮大,国内高校均有自身的校园网。

主要使用BS(浏览器/服务器)模式实现,该模式是目前使用得最多的一种教务系统架构。

教务系统在功能上通常具备学生个人信息管理,课表的查询,学生选课,考试时间查询,报考等模块。

根据不同的院校可能有所不一,但主要功能还是那么几个模块。

当前国内高校的教务系统已相对完善,尤其在功能上。

但不足点还会存在,在安全性和信息更新化方面。

某些院校由于使用频率相对较少,导致某些模块的更新较少(例如校内新闻,时事),甚至不再进行更新,只当门面使用。

随机恶意软件,病毒,黑客技术的壮大,校内系统容易被攻击。

再加之,某些院校系统长年未对系统使用,检查,出现问题的概率加大。

国内教务系统功能已相当完善,但互联网技术发展迅速,教务系统作为高校进行协助教学的工具之一,也应紧随技术的前进,尤其在安全性上。

除了教务系统的使用,国内高校上课已使用线上线下模式。

如mooc平台,学生在平台上进行网课的听学,各高校将教学视频,资源上传到学习平台共享,供广大学生进行学习。

此类教学资源相对较优质,多为高等学府共享。

高校已离不开网络的应用,因此网络应用使用的质量尤其重要。

1.2.2国外教务系统使用现状

国外发展互联网技术早于国内,在教务系统方面的使用投入时间也优先于国内。

在六七十年代起,国外的大学已开始对教学信息化管理进行研究,探索。

据资料显示,最早是在20世纪70年代,美国的麻省理工学院提出了数字化校园的概念。

经过多年的努力,目前已有相对成熟的数字化校园平台。

在美,85%的高校能够提供在线课程目录服务,72%的高校能提供在线课程注册服务。

欧洲的各个大学也相续建立起了自己的教务系统。

在日本,40%多的二年制短期大学,60%多的四年制大学,以及90%多的高等专科技术学院推广应用基于互联网,电讯和卫星的视频会议系统,从而进行视频管理,科研以及教学活动[2]。

有的知名院校除了开发教务系统,还联合科技公司进行研究,开发在线教学平台,未来课室等项目。

目前国外在线教育平台有Lynda,sparknotes,coursera,khan等网站,具备丰富,优质的课程资源。

国外的高校已少不了教务系统的协助,也处在了相对完善和成熟的状态。

1.3教务系统测试简介

论文主要分为以下章节:

第一章绪论,介绍当前国内外教务系统的使用情况。

包括了论文的课题目的,意义以及本论文的章节安排。

第二章教务系统分析,从使用者的角度对教务系统进行分析,介绍教务系统的基本使用情况。

包括系统的来源,系统各个功能模块的介绍。

第三章教务系统的测试管理,对系统的统一管理,包括使用的工具,测试分析,测试的计划,测试的过程,测试结果和测试环境,方便以后整理。

第四章教务系统的测试方案与实施,针对该系统设计的一些适合可用的测试方案与执行测试方案。

其中包括功能测试,安全测试,性能测试,界面测试,容量测试,兼容性测试。

以及测试用例的编写,使用到的测试工具。

设计好方案后对教务系统测试的实施,按照方案,测试用例进行测试和分析结果。

执行测试用例,对比结果,详细记录整个测试过程。

第五章教务系统的测试报告。

尤其是存在缺陷的地方,需要进行缺陷报告整理。

第六章结论,记录测试的心得。

包括测试中的不足和需改善的地方。

第二章教务系统的分析

2.1本次测试所选系统

本次测试采用了使用jsp技术建成的高校教务管理系统。

该系统相对于高校现在所用的系统功能类似,对该系统进行测试一定程度上也反映出现所用系统的某些可能问题。

不对现用系统进行直接测试原因如下:

一:

对上线的高校教务系统进行测试会一定程度上影响到系统的运行使用。

二:

多数高校系统采用内网形式,以及需教师,学生账号进行登陆,在未经许可的情况下,取得账号较难。

为了不影响教务系统的正常使用,使用本地搭建的教务系统进行测试。

该系统代码从网络共享下载而得,可搭建运行。

开启tomcat服务器和mysql的数据库后,在eclipse中运行,下面是系统登陆后展现的首页。

图2-1教务管理系统首页

从首页中可以看出教务系统大概包含的主要功能(教师团队,教学文档,学生管理,教学活动,班级,课程等管理)。

2.2系统分析

此教务系统包含了教师和学生的管理,包含了多个功能模块。

从登陆功能到管理界面的多个功能。

登陆:

输入账号,密码,匹配正确即可登陆成功,进入首页。

注册:

进入系统首页即可查看到注册功能,用于新用户进行注册。

填写账号,用户名,密码,确认密码,性别,年龄,手机号码,办公电话,e-mail,名师级别,课程组名称,职务,专业,主课程,办公地点,获得成就,个人简介,头像等信息后,点击确认即可注册成功。

教师团队管理:

包含了教师,管理员的账号,性别,姓名,年龄,手机号码,邮箱,名师级别,课程组名称,职称,专业,主课程,成就,创建时间等信息。

可通过用户姓名/账号进行查询功能。

教学文档管理:

包含文档编号,文档名称,文档类别,内容简介,备注,创建时间等信息。

可通过文档名称进行搜索。

以及点击新添,修改,删除对文档进行操作。

学生信息管理:

包含学号,姓名,学生类型,性别,成绩,所在班级,创建时间等信息。

可通过姓名进行搜索,以及新添,删除,修改,下载学生信息功能。

教学活动信息管理:

活动名称,类别,内容简介,获得成果,地点,创建时间等信息。

可通过活动名称查询,可新添,修改,删除,下载资料功能。

班级信息管理:

班级名称,班级人数,班级简介等信息。

可通过班级名称搜索,以及新添,修改删除信息,下载课表,学生名单,资料功能。

个人信息管理:

包含账号,姓名,年龄,性别,手机号码,办公电话,邮箱,级别,课程组名称,职称,专业,主课程,成就,创建时间信息,以及查询,修改个人信息,重置密码功能。

第三章测试管理

3.1测试环境以及工具

系统运行需要的环境有mysql,myeclipse。

对系统测试用到了的工具有pycharm(python),loadrunner,jmeter,sqlmap,burpsuite,awvs,appscan,struts2扫描,御剑后台扫描,GitHack-master等工具。

以及火狐,360,谷歌等多个浏览器。

若对上述工具按照测试面进行分类,大致如下:

性能测试:

loadrunner,jmeter

安全测试:

sqlmap,burpsuite,awvs,appscan,struts2扫描工具,御剑后台扫描工具,githack-master,以及python编写的爬取目录,检测iisput,ms15-034漏洞的脚本。

兼容性测试:

多款浏览器的使用(火狐,360,谷歌)。

具体使用到的工具会在测试运行实施中提及。

功能性测试这里使用了手工进行测试用例的检测。

界面测试,易用性测试则依靠个人的不同观点进行检测,不太依赖于工具的使用。

3.2测试管理

测试管理可使用QC进行,方便团队间进行交流,管理。

可将需求分析,测试用例关联起来。

包括到缺陷报告的生成,都可在QC中进行管理。

由于个人对系统进行测试,这里使用了excel的表单对测试的需求分析,用例设计,缺陷报告进行管理。

在真实项目中,应使用QC工具管理整个测试流程。

一个好的管理工具,不仅包含了测试流程的管理,还会涉及到测试中使用到的需求等文档,测试人员管理,开发人员管理等。

让测试人员,开发人员,产品人员都都可以在上面进行项目的管理,提高协作效率。

3.3测试方法

测试此教务系统主要使用黑盒测试,从一个使用者的角度进行测试。

黑盒测试的方法主要有:

等价类划分,边界值,因果图,专家测试法,场景测试。

主要针对功能测试进行设计。

性能测试,安全测试主要根据工具进行检测。

界面,易用性则主要依靠各人的意见,综合意见得出结果。

测试方法,主要是为了更好的找出bug,尽可能想得更加周到。

但有时也需要方法外的灵感,奇葩的想法有时候往往会发现惊喜。

第四章测试计划与实施

4.1功能测试

从教务系统展示的功能来看,主要有登陆功能,教师团队信息管理,教学文档管理,学生信息管理,教学活动管理,班级信息管理,课程信息管理,个人信息管理。

(由于注册功能不应出现在用户的功能列表中,进行测试时直接将其忽略)

在没有明确的需求情况下,主要使用黑盒测试对功能进行检测。

从用户角度对各功能进行分析,编写测试用例。

下面从用户角度进行场景使用分析法得出登陆功能的测试用例。

主要针对正确登陆与错误登陆进行分类。

图4-1登陆测试用例

编写出测试用例后,根据用例的执行步骤进行测试。

得出实际的结果后,将结果记录下来。

在登陆功能中主要有7种可能性存在,分登陆成功与失败。

登陆功能编写完成后,再对各管理模块进行测试用例书写。

首先是教师团队信息管理。

点击教师团队信息可查看到所有教师的信息,以及可通过搜索功能进行搜索。

通过测试用例验证是否可正常查看信息以及搜索出教师信息。

图4-2教师团队测试用例

教师管理的测试用例主要有8个,其主要功能围绕在搜索上,对各种存在的搜索可能输入进行验证。

书写好教师团队管理,接下来的是教学文档管理模块。

主要包含添加,修改,删除以及查询文档,下载文档的功能。

对5个功能分别进行用例分析。

图4-3文档测试用例-1

图4-4文档测试用例-2

完成文档管理的用例书写后,接下是学生的信息管理。

主要功能点类似于文档管理,包含了添加,删除,修改,查询学生信息,下载学生资料。

根据各功能点以及所用到的学号,姓名,类型,性别,成绩,班级等数据进行测试用例的设计。

图4-5学生管理测试用例-1

图4-6学生管理测试用例-2

教学活动管理模块,主要包含了添加,修改,删除,查询活动等功能,以及下载资料。

包含了名称,类型,简介,成果,地方,备注,文件等数据项。

针对5大功能点进行了测试用例的设计。

图4-7教学活动测试用例-1

图4-8教学活动测试用例-2

紧接着对班级模块进行编写设计。

点击班级管理进入界面后,发现有查询,新添,修改,删除,下载班级课表,下载学生名单,下载资料等操作。

展示的信息包括了班级名称,班级人数,班级简介。

针对涉及的功能点进行测试用例的编写。

图4-9班级管理测试用例-1

图4-10班级管理测试用例-2

班级模块的测试用例设计完成后,是课程的测试用例设计。

课程管理的功能主要是查询,新增,修改,删除,下载资料,下载班级课表。

其中班级信息包含了班级名称,班级编号,课程简介,课程类别,所带的班级等。

针对有效与无效划分,进行测试用例设计。

图4-11课程管理测试用例-1

图4-12课程管理测试用例-2

课程的设计用例完成后,仅剩下个人信息的管理。

主要修改个人的资料,重新设置密码。

设计的测试用例如下:

图4-13个人管理测试用例-1

图4-14个人管理测试用例-2

主要的8个功能点测试用例全部设计完成,接下来是对测试用例的实施。

检验实际的结果是否与预测相同,不通过的测试将移交到缺陷报告中。

测试用例可在QC工具中编写,方便管理。

由于个人测试,这里使用了直接在excel文档中编写,团队间合作测试应使用qc工具,便于管理。

针对各功能的测试用例进行了手工的测试验证,记录下实际结果。

4.2安全性测试

一个产品在使用的时候,除了其功能可以正常使用之外,还需要关注他的安全性。

如果一个产品十分劣质,其安全性可以说是十分堪忧的。

例如一个劣质的微波炉,其加热功能无误,但加热功能一旦用久了或某种原因导致不断加热,无法停止,将可能产生爆炸,危害到使用者的身体安全,或者说其玻璃等质量存在问题,假设一旦触碰到水,玻璃在加热状态下就立马破裂开,使微波炉失效。

一个系统也是如此,不仅要保证系统的正常使用,还要考虑其安全性。

例如该系统会不会因为安全性薄弱,被不法分子攻击利用,盗取其网站系统的数据或者将系统关闭,甚至借该系统的安全问题引发起全球性的网络安全问题。

接下来对教务系统进行安全性方面的测试。

从一个黑客的角度对教务系统进行攻击,考虑各个功能点可能存在的安全问题。

将会使用到一系列的工具,其中有burpsuite,firefox浏览器,sqlmap,awvs。

准备好相关的渗透测试工具后,对教务系统进行测试。

首先是登陆功能(假设当前已经知道了教务系统的网站并且能够打开进入)。

在登陆界面中,缺乏验证码。

可以对登陆功能进行暴力破解,在未知道用户账号的前提下,尝试admin,manager的管理员账号名称进行尝试破解。

黑客也可以使用社工的手段获取到相关的某个账号。

下面使用burpsuite工具进行捉包。

在360浏览器中设置代理服务器的地址为127.0.0.1:

9090,并且把本地不使用代理服务器的选择取消,同时在burpsuit中的proxy的option中添加地址127.0.0.1:

9090。

然后在浏览器中打开的登陆界面,输入admin后点击登陆。

此时捉包成功,在burpsuite中显示出请求包的内容,account的内容为admin,password为空。

图4-15捉取登陆包

在没有验证码的情况下,首先想到的是暴力破解。

将请求包发送到intrude中进行破解。

在网上寻找到常用的弱密码的字典,在payloads中将字典导入并且进行破解执行。

从破解得到的数据中看,所有的相应状态码都为200,无法在响应码中看出密码,但从长度来看,有两项数据的长度与众不同,特别短(其他数据均为5659),分别为空和1。

空密码的可能性较低,因此密码为1。

暴力破解成功。

针对不同的用户账号,进行专门的社工得知其生日等信息,更有利于破解的成功。

图4-16暴力破解密码

解决登陆中的暴力破解问题,可加入验证码验证,使得破击难度加大,同时设置ip的登陆次数,试错次数低,从而降低破解的可能性。

在用户的角度来看,用户需要提交安全意识,设置高难度的密码,英文大小写数字搭配使用,并且使用一些非特殊意义的组合(如个人生日,名字缩写,配偶生日等尽可能不使用)。

管理员在创建账号的时候应给予密码长度,复杂度的验证,否则创建失败。

如长度应在6位数以上,不能使用连贯字符,使用大小字母,数字,特殊字符中两种以上组合,避免出现重复字符等。

本教务系统存在密码为1,密码为123456的用户账号,此类密码强度十分低。

在登陆界面,除了登陆功能还有注册功能。

注册功能在教务系统中不应该存在,否则造成任意注册用户。

用户应该由教务系统管理员在后台数据库中添加,修改,而不由用户来进行注册生产。

或者在管理员登陆后点击注册用户的功能,而不是将注册功能暴露在首页,导致任意注册问题。

同时注册页面对密码的强度没有要求,安全性极低。

未作长度,复杂度检验。

(一个密码为123的测试注册)注册界面如下:

图4-17无密码强度验证

拿到站点后,黑客通常会对站点进行一个后台的扫描,这里使用了工具御剑后台扫描器进行扫描。

扫描出了login.jsp,upload,sys,include,image等地址。

除了login页面能被正常打开,其他均显示错误报告。

对一些资深的恶意攻击者来说,错误信息中容易得出可用的信息(例如文件路径,所用语言等等)。

建议错误信息不被显示,仅输出无法登陆界面或者其他信息即可,将详细的错误信息掩盖。

在url中输入错误的参数信息后,显示出详细的错误信息。

以下仅截图部分信息。

可以看出文件的位置信息。

某些信息对于小白来说可能无法利用起来,但未代表此类信息无利用价值,可能messages中的信息提示有助于黑客进行构造可用的sql注入攻击。

除了安全性外,此类错误提示页面也影响用户的体验,用户看到一大推的详细错误信息,不懂并无法解决,使用户体验下降。

正常的用户不需要此类信息,转换成页面出错,返回到上级界面或者首页,登陆界面即可。

出错效果如下图:

图4-18显示错误详细信息

在对教学文档管理,学生管理,教学活动管理,课程管理等模块中的删除进行操作时,无需确认是否由发布人进行删除,删除操作容易实现。

任何用户均可点击删除操作对任意文件进行删除。

从安全性来看,对文件的保护力度不足,放宽了用户的操作权限,对文件具有越权操作。

除了没有对权限进行区分外,同时没有进行二次的验证。

用户登陆成功即可删除文件,无需再次确认身份。

最后,使用python语言编写了一个对后台目录进行扫描的脚本,以及检测两个漏洞类型(均可根据响应信息进行判断)。

根据返回的响应码来判断是否存在该目录。

一般访问成功的响应码为200,根据响应码200来判断该url地址是否存在。

首先引入requests,sys,random,math,以及threading等库。

图4-19引入库

定义一个列表,在列表中存储多个代理名称,以防同一个代理进行多次扫描时被网站限制,影响扫描。

然后使用random在列表中随机选取来赋值到headers上。

图4-20代理服务器

定义一个result_list的列来存储响应为200的地址。

随后定义一个方法从文本中获取到数据(将被用于拼接目录的目录名称字典),并使用3个线程进行。

获取到文本长度后,算出每个线程需要处理的数量。

图4-21读取文本,分配线程

定义一个scan的扫描函数,函数里使用requests的get方法进行访问目录,然后对访问的状态码进行对比,若为200则输出url地址,最后使用threading.Thread方法在for循环中启动线程。

图4-22扫描目录方法,并判断

定义检查ms15-034漏洞的方法。

此漏洞引发是因为在http协议堆栈中,没有对恶意的http请求进行正确分析导致。

攻击者利用这种漏洞能够在系统账户的上下文中任意执行代码。

这种漏洞一般出现在服务器为iis/7.5和iis/8.0的版本上。

首先对目录进行请求,查看其响应信息中的server信息。

若版本为iis7.5/8.0,则进行下一步验证,在exploit-db中搜到该漏洞的poc,将payload={‘Host’:

‘stuff’,‘Range’:

‘bytes=0-18446744073709551615’},放置到heade

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 党团建设

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1