实验3 《软件项目的编码与测试》实验报告.docx
《实验3 《软件项目的编码与测试》实验报告.docx》由会员分享,可在线阅读,更多相关《实验3 《软件项目的编码与测试》实验报告.docx(16页珍藏版)》请在冰豆网上搜索。
实验3《软件项目的编码与测试》实验报告
软件工程
实验报告
实验1:
图书管理软件系统
软件项目的编码与测试
学号:
班号:
姓名:
课程主讲教师:
张建国
实验指导教师:
张建国
提交日期:
2011年11月11日
图书管理软件系统
软件项目的编码与测试
1引言
1.1编写目的
根据测试计划报告,对软件进行测试,详细记录测试过程,以对软件的质量进行测评,为软件设计人员提供BUG依据,故编写了此文档。
1.2背景
A.本项目的名称:
图书管理系统
B.本项目的使用者:
读者、图书管理员、游客
1.3定义
A.黑盒测试:
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。
在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。
黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
B.白盒测试:
白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。
这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。
1.4参考资料
《软件工程导论》(第五版),张海藩编著,清华大学出版社,2008年2月第5版
2测试概要
测试标识符
测试内容
实际测试工作内容与预先设计的内容的差别
系统登陆测试
检查用户是否合理、合法
无
图书管理测试
查询、添加、删除、修改图书信息
无
图书查询测试
进行图书信息查询
无
还书测试
读者退还所借书籍
无
用户、管理员管理测试
添加、删除、修改用户、管理员信息
无
3测试结果及发现
3.1测试1(系统登陆测试)
系统登陆测试总表:
输入
输出
用户名
密码
权限
进入游客模块
admin
管理员
登录失败,输入错误
admin
管理员
登录失败,输入错误
admin
admin
管理员
登录成功,进入管理员模块
123456
普通用户
登录失败,输入错误
123456
普通用户
登录失败,输入错误
123456
123456
普通用户
登录成功,进入用户模块
1.输入:
””“”
输出要求:
进入游客模块
输出结果:
进入游客模块
2.输入:
”““admin”
输出要求:
登陆失败
输出结果:
3.输入:
”admin”“”
输出要求:
登陆失败
输出结果:
4.输入:
”admin”“admin”
输出要求:
登陆成功,进入管理员模块
输出结果:
登陆成功
5.普通用户登陆测试与管理员登陆测试类似
3.2测试2(图书管理测试)
1.添加图书测试
输入:
图书信息
输出要求:
添加成功
输出结果:
2.修改图书测试
输入:
输出要求:
修改成功
输出结果:
3.添加图书分类测试
输入:
”艺术”
输出要求:
已经有这个分类
输出结果:
输入:
”工学”
输出要求:
添加成功
输出结果:
4.修改图书分类测试
输入:
将”工学”改为”工科”
输出要求:
修改成功
输出结果:
3.3测试3(图书查询测试)
图书查询测试用例:
输入
输出
书名
分类
出版社
价格范围
出版日期
软件工程导论
科学
清华大学出版社
1-50
2000-1—2010-12
查询成功,输出所需信息
文学
输出所需信息
艺术
没有搜索到记录
新疆大学出版社
输出该出版社的所有图书
20—30
2001-1-1—2003-12-31
输出图书价格在20—30元之间的图书
2001-1-1—2003-12-31
输出在该日期之内的图书信息
1.输入:
输出要求:
显示出查询结果
输出结果:
2.输入:
文学
输出要求:
显示出文学类的图书
输出结果:
3.输入:
艺术
输出要求:
显示出艺术类的图书
输出结果:
4.输入:
新疆大学出版社
输出要求:
显示出该出版社下的所有图书
输出结果:
5.输入:
”20—30”
输出要求:
图书价格在20—30元之间的所有图书
输出结果:
6.输入:
”2002-1-1—2003-12-31”
输出要求:
出版日期在该日期范围内的所有图书
输出结果:
3.4测试4(借书测试)
借书测试用例:
输入
输出
用户id
图书id
用户编号不能为空
37
图书编号不能为空
37
33
此用户不存在
18
33
此书不存在
18
2
借书成功
1.输入:
””“”
输出要求:
借书失败
输出结果:
2.输入:
”38”””
输出要求:
添加失败
输出结果:
3.输入:
”37”“”
输出要求:
添加失败
输出结果:
4.输入:
”18”“33”
输出要求:
添加失败
输出结果:
5.输入:
”18”“2”
输出要求:
添加成功
输出结果:
3.5测试5(还书测试)
还书测试用例:
输入
输出
用户id
图书id
用户编号不能为空
37
图书编号不能为空
37
33
此用户不存在
18
33
此书不存在
18
2
还书成功
1.输入:
””“”
输出要求:
还书失败
输出结果:
2.输入:
”38”””
输出要求:
还书失败
输出结果:
3.输入:
”37”“”
输出要求:
还书失败
输出结果:
4.输入:
”18”“33”
输出要求:
还书失败
输出结果:
5.输入:
”18”“2”
输出要求:
还书成功
输出结果:
3.6测试6(用户、管理员管理测试)
普通用户测试用例:
输入
输出
用户名
密码
qq
qq
用户名重复
3
密码不能为空
3
用户名不能为空
3
3
添加用户成功
1.输入:
”qq””qq”
输出要求:
用户名重复
输出结果:
2.输入:
“3”“”
输出要求:
密码不能为空
输出结果:
3.输入;””“3”
输出要求:
用户名不能为空
输出结果:
4.输入:
”3”“3”
输出要求:
添加成功
输出结果:
修改用户测试用例:
输入
输出
修改前
修改后
用户名
密码
是否锁定
用户名
密码
是否锁定
3
3
未锁定
3
4
未锁定
修改成功
3
3
未锁定
4
3
未锁定
修改成功
3
3
未锁定
4
4
锁定
修改成功
3
3
未锁定
4
4
锁定
修改成功
1.输入:
密码改为”4”
输出要求:
修改成功
输出结果:
2.其他修改测试类似
3.添加管理员测试和修改密码测试类似于添加普通用户测试和修改用户测试
4对软件功能的结论
4.1功能1(系统登录)
4.1.1能力
在测试过程中对于选用的用例基本能过提出错误提示,变现良好。
4.1.2限制
在输入时如果选择了游客,则无论是否输入用户名和密码都会进入游客模块,在该功能上还有待进一步改进。
4.2功能2(图书管理测试)
4.2.1能力
图书管理测试中的各项功能,包括添加图书、修改图书、删除图书,添加图书分类、修改图书分类、删除图书分类,表现得都比较迅速。
4.2.2限制
对于图书信息表的数据项还应该多添加一些,这点还有待进一步改善。
4.3功能3(图书查询测试)
4.3.1能力
图书查询速度较快,查询能力也较好。
4.3.2限制
由于数据库内容较少,查询速度不能反应出软件处理的真实情况,这点还需有待验证。
4.4功能4(借书测试)
4.4.1能力
还书能力较好,速度也较快。
4.4.2限制
在录入用户id和图书id是可以利用条形码而不需手工录入,在这点还有待进一步改进。
4.5功能5(还书测试)
4.5.1能力
还书能力较好,速度也较快。
4.5.2限制
在录入用户id和图书id是可以利用条形码而不需手工录入,在这点还有待进一步改进。
4.6功能6(用户、管理员管理测试)
4.6.1能力
在添加、删除、修改用户和管理员的功能上都较快。
4.6.2限制
由于数据库内容较少,添加、修改、删除速度都还不能反应出软件处理的真实情况,这点还需有待验证。
5分析摘要
5.1能力
针对现实情况,该软件能对管理模块进行相应的操作,能做到基本的登陆验证、图书管理、还书、借书、图书查询、用户、管理员管理等功能,反应速度还能令人满意。
5.2缺陷和限制
在登录系统中,没有对不符合要求的用户名和密码格式进行限制。
在图书管理系统中,数据库中的内容还较少,不能较准确的反应出添加、删除、修改图书信息以及添加、删除、修改图书分类信息的速度。
在图书查询系统中,没有对每一本书的详细信息进行查询,而且数据库较小。
在还书系统中,没有将书的条形码有效利用起来。
5.3建议
a.增加登录时的验证规则;
b.增加数据库中的内容;
c.增加查询时的现实信息;
d.争取有效利用条形码而不需人工输入图书id
5.4评价
该图书管理系统基本实现了图书管理、查询,用户借书、还书、管理等功能。
界面简洁美观,但是在某些功能上还有待进一步改善。
5.5测试结论
1.测试目标完成
2.测试已经通过
3.可以进入下一阶段项目目标
总结
这次软件工程课程设计,我主要采用VisualBasic作为前台开发工具,MicrosoftSQLSevere2000作为后台数据库,结合软件工程设计和数据库编程的有关知识,开发了这个图书管理系统。
通过这次软件工程课程设计,我对于软件工程设计的相关步骤和流程有了更深刻的理解,熟悉并掌握了MicrosoftSQLSevere2000和VB6.0的数据库使用,另一方面,也对SQL语言作为嵌入式语言的功能有了更深刻的体会。
同时,我也发现自己对于软件工程设计和数据库设计的知识掌握的还不够,设计和编程能力还有待于进一步提高。
这次课程设计给了我一个锻炼自己,强化专业知识的机会,通过这次课程设计,我也得以一窥软件工程设计的广袤天地,我相信,只要认真学习,多借鉴别人的经验,多思考,多实践,就一定能够成为一个合格的软件设计人员,能够翱翔在软件开发的天地。
同时,在这里感谢我的指导老师张建国老师的悉心指导。