软件工程课程设计图书管理系统 联系客服

发布时间 : 星期六 文章软件工程课程设计图书管理系统更新完毕开始阅读60686fb400f69e3143323968011ca300a7c3f664

} }

·测试要求:运行正常。

五、测试报告

1、引言

1编写目的:测试图书馆管理系统软件的各项功能是否符合预期要求。本○

报告读者为软件设计者。

2项目背景:该软件由学生个人设计,无开发部门和主管部门,主要供学○

生练习使用。该软件独立于其它软件系统。

3参考资料: 万晓东 施玉霞 等着《软件技术基础教程》09年7月 ○

谭浩强 着《C语言程序设计 第三版》 张志航 王珊珊等 着《程序设计语言—C》 07年9月 2、测试计划执行情况 1权限功能 ○

·测试数据:输入正确密111

·测试结果:成功进入主界面,说明本模块功能正常 2插入功能 ○

·测试数据:无

·测试结果:菜单显示正常。 本模块功能正常。 3插入功能 ○

·测试数据:history 100

·测试结果:调用显示函数显示结果。本模块功能正常。 4删除操作 ○

·测试数据:history ·测试结果

调用显示函数显示结果:

输出结果正确,说明本模块功能正常。 5查询模块 ○

·测试数据:预输入数据 history 100

physics 200 查询history

·测试结果:显示结果 history 100 0 0 说明本模块运行正常。 6显示模块 ○

·上述过程已经对本功能进行了测试。 ·结果:显示模块运行正常。 7借出模块 ○

·测试数据:预输入数据 history 100

physics 200

调用借出函数借 history 50

maths 100

·测试结果

调用显示函数显示结果: 8归还模块 ○

·测试数据:预输入数据 history 100

physics 200

调用归还函数还 history 50

·测试结果:

9文件读入模块 ○

·测试数据:文本文档

·测试结果:调用显示函数显示结果 测试结果正确。 10文件备份模块 ○

·测试数据: 测试数据采用上一步写入的数据 ·测试结果

11退出模块 ○

·测试数据: 无

·测试结果 成功退出程序 并生自动成备份文件 退出模块运行正常。 3、评价结果

1软件能力: 软件各项功能复合预期,各子程序运行正常 ○

2缺陷和限制:每次登陆后必须手工调入上一次的备份文件以恢复系统数○

据,给操作者带来不便

3建议: 完善系统的数据库功能,提供安全可靠的数据保存功能。 ○

4测试结论: 本软件测试通过。 ○

附源程序代码:

#include<> #include<> #include<> #include<> #define NULL 0

#define LEN sizeof(Book) struct A

{char Name[20]; int all,left,borrow; struct A *next;

};

typedef struct A Book;

int Display_Main_Menu(); /*主菜单显示*/ Book *Create(); /*功能函数声明*/ void Display(Book *head); Book *Insert(Book *head,Book *s); Book *Insert_a_record(Book *head); Book *Delete(Book *head,char *name); Book *Delete_a_record(Book *head);

Book *Borrow(Book *head,char *name,int sum); Book *Borrow_a_Book(Book *head);

Book *Return(Book *head,char *name,int sum); Book *Return_a_Book(Book *head); Book *Query(Book *head,char *name); void Query_a_record(Book *head);

Book *AddfromText(Book *head,char *filename); Book *WritetoText(Book *head,char *filename); void Quit(Book *head); void main() /*主函数部分*/ {Book *head; /*定义变量*/ char filename[20]; int keyword=111,a;

printf(\ scanf(\

if(a!=keyword) exit(0); else printf(\ head=NULL; /*置首指针为空*/ for(;;) {

switch(Display_MainMenu()) {

case 1:printf(\调用Create函数创建链表*/ head=Create(); system(\ break;

case 2:printf(\

Display(head); /*调用Display函数显示所有*/

system(\ case 3:printf(\

head=Insert_a_record(head);/*调用Insert_a_record函数插入*/ system(\ case 4:printf(\

head=Delete_a_record(head);/*调用Delete_a_record函数删除*/ system(\

case 5:printf(\

head=Borrow_a_Book(head);