} }
·测试要求:运行正常。
五、测试报告
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);