商品仓库管理系统测试报告
一.引言
1.背景
本测试计划从属于商品存储配送物流管理系统。
用户为中、小规模超市、商场、
公司。
执行本测试前,已完成软件计划,需求分析,设计及编码工作。
2.参考文档
需求分析文档,概要设计文档,详细设计文档,测试计划文档,程序清单。
二.软件说明
1.本软件的主要功能为:
(1)对商品入库和出库详细情况进行登记
(2)对商品出库安排车辆信息进行登记
(3)对库存信息进行高级查询
(4)对运输信息进行查询
(5)对客户信息进行登记
(6)对客户信息进行查询
(7)按照要求自动生成统计清单
(8)按照要求对所需清单进行打印
(9)实现数据库的断开、连接、备份
(10)对使用者进行管理
2.条件与限制:
⑴考虑到本软件面向的用户群比较广泛,在设计时应注意使软件具有较强的可
移植性;
⑵因本软件管理的某些信息属商业机密,必须注意信息的安全防范,同时应以
标准的数据格式来实现,以方便数据共享;
三.测试步骤
本次测试采用黑盒法。
主要依据需求分析文档和测试计划文档,以需求分析文
档中的功能模块为单位,对提交的成型系统进行测试。
综合使用等价类划分法
和其它方法。
详细测试步骤如下:
表1 单元测试
四.单元测试(各类函数)
利用Visual Studio2005中自带的单元测试功能进行单元测试,测试各个类
中的函数。
按要求输入,测试与预期的结果是否吻合,如果不吻合则单元测试
结果将显示失败或者出错提示,若成功则单元测试结果将显示“通过”,如下。
1.测试loginform类下的函数Tloginform.loginClick(Sender:
TObj ect);
loginform
函数声明如下:
var
sqlstr:string;
quanxian:string;
begin
sqlstr:='select*from users where users=:users and passwords=:passwords';函
数预期实现的功能:依据用户输入的用户名和密码判断用户的类型。
输入:在unit1.pas的Tloginform.loginClick(Sender:TObject);函数的首行添
入如下代码:
try
ADOQuery1.SQL.Add(sqlstr);
adoquery1.Parameters.ParamByName('users').Value:=edit1.Text;
//必
须确定属性字段
adoquery1.Parameters.ParamByName('passwords').Value:=edit2.Text;
ADOQuery1.Open;
if(ADOQuery1.RecordCount=0)then
begin
messagedlg('请输入正确的用户名和密码',mtError,[mbok],0);
exit;
end;
except
on e:erangeerror do
showmessage('用户名或密码错误');
end;
begin
if(LeftStr(edit1.Text,2)='YB')then
menumangerform.Show
else
chaxun.Show;
end;
end;
测试结果:通过
2.测试Tmenumangerform中的insertClick(Sender:TObject)
函数声名如下:
Procedure.menumangerform.insertClickClick(Sender:TObject);
函数预期实现的功能:对货物信息进行增删改查的操作。
procedure Tmenumangerform.insertClick(Sender:TObject);
var
sqlstr:string;
begin
ADODSt.open;
ADODSt.Insert;
save.Enabled:=true;
cancel.Enabled:=true;
insert.Enabled:=false;
end;
测试结果:通过。
3.测试TCostmangerform中的Button1Click(Sender:TObject),TCostmangerform
函数声名如下:
procedure TCostmangerform.Button1Click(Sender:TObject);
函数预期实现的功能:对货物数量进行修改。
输入:
adosp1.Parameters[0].Value:=ComboBox1.Text;
期望输出:
flag:=true;
adosp1.Next;
测试结果:通过。
4.测试TSchaxun中的Button1Click,
函数声明如下:
procedure TSchaxun.Button1Click(Sender:TObject);函数预期实现的功能:对货物的基本信息进行查询。
输入:
case sVlaue of
0:sqlstr:='select*from Student,Grade where Student.Num='''+edit1.text+''' and Student.Num=Grade.Num';
期望输出:
查询的相关信息
5.测试TSchaxun中的Button1Click
procedure Tchaxun.Button1Click(Sender:TObject);
测试结果:通过。
6.测试TSchaxun中的Button3Click。
procedure Tchaxun.Button3Click(Sender:TObject);
期望输出:打印相应信息表
测试结果:通过。
五、集成测试
本系统的集成测试重点是页面间的跳转以及页面之间的参数传递是否通过。
对于页面之间的跳转测试,主要测试点击本系统中的各个页面的导航链接和功
能跳转按钮提示是否跳转到相应的页面;对于参数传递的测试,主要测试页面
间传递参数所长生的结果是否通过。
表5 有效等价类
错误:库存查询中:ADOQuery1.SQL.Add('SELECT*FROM rk');由于没有填
写相应的条
件限制语句,所以不管怎么查询,最后显示的是所有的信息。
经修改:添加条件限制语句:
ADOQuery1.SQL.Add('where入库单号=:ss');/
ADOQuery1.SQL.Add('where货名=:ss');
错误得到修改。
下面是对某些严格要求数据正确性的模块的测试设计及测试结果,对于
这些模块
采用了等价类划分的测试方法。
1.“登入登出”功能的测试设计
表7 测试结果记录
2.“添加库存信息”功能的测试设计
错误:在数据库相关表中,一些字段没有设置为不能为空,经修改属性不能为空字段后,错误得到改正。