银行储蓄系统测试分析报告(“按用户名和ID查询”模块测试分析)1.引言1.1编写目的完成系统具体的测试要求,对系统进行全面的分析,并通过测试结果,总结测试是否通过,若不通过则查明原因,并进行修改以及再测试。1.2背景1.3定义测试用例:把测试数据和预期的输出结果称为测试用例。黑盒测试:也称功能测试或数据驱动测试,指已知产品所应有的功能,通过测试来检测每个功能是否都能正常使用。测试时,把程序看作一个不能打开的黑盒子,测试者对程序接口进行测试。白盒测试:也称结构测试或逻辑驱动测试,指已知产品内部工作过程,检测产品内部工作过程是否符合需求规格说明书的规定,按照程序内部的结构测试程序,检验程序每条通路是否都能按要求正确工作。测试时,测试者必须检查程序的内部结构,从检查程序的逻辑入手得出测试数据。1.4参考资料《软件工程导论(第四版)》张海藩编着清华大学出版社出版《软件工程》任胜兵邢琳编着北京邮电大学出版社2.测试概要对“按用户名和ID查询”模块(G6)进行黑盒测试和白盒测试,并记录下测试结果。3.测试结果及发现3.1“按用户名和ID查询”模块(G6)黑盒测试:有效输入的等价类有:用户ID由字母,数字组成,最多12个字符无效输入的等价类有:空字符串(全是空格);最左边的字符为空格;字符之间有空格合法输出的等价类有:能够显示储户的用户名,账号,账户余额,利息金额,存款银行,业务员编号,存款日期,取款日期,手续费。非法输出的等价类有:不能够显示储户的用户名,账号,账户余额,利息金额,存款银行,业务员编号,存款日期,取款日期,手续费其中的某一项或多项,或者显示有误。根据上面划分的等价类,可设计出下述测试方案:(1)空字符输入:‘’预期的输出:“错误----没有字符”(2)最左边的字符为空格输入:‘Hab23’预期的输出:“错误----首字符为空格”(3)字符之间有空格输入:‘whK26m’预期的输出:“错误----字符间有空格”3.2“按用户名和ID查询”模块(G6)白盒测试设定数据库中用户:tom的用户ID为“hw1235”,对G6模块进行白盒测试:条件覆盖(判定表达式中的每个条件都取到各种可能得结果):测试数据:(1)用户ID=“hw1235”,用户名=“cat”(两个条件都正确)(2)用户ID=“aw1235”,用户名=“cat”(用户名正确)(3)用户ID=“hw1235”,用户名=“bill”(用户ID正确)(4)用户ID=“zg1235”,用户名=“tom”(两个条件都不正确)“按用户名和ID查询”模块(G6)的程序代码:%@pagecontentType=text/html;charset=gbk%styletype=text/css!--.STYLE1{font-size:large}--/stylepclass=STYLE1 检索用户信息/pformid=form1name=form1method=postaction=p用户IDlabelinputname=idtype=textid=id//labellabel inputtype=submitname=Submitvalue=检索//label/pp用户名labelinputname=nametype=textid=name//label/p/formp /p%@pageimport=java.sql.*%%Stringid=request.getParameter(id);Stringsname=request.getParameter(name);Stringname=newString(sname.getBytes(iso-8859-1));Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connectioncon=DriverManager.getConnection(jdbc:odbc:ruanjiangongcheng);Statementsql=con.createStatement();ResultSetrs=sql.executeQuery(select*fromcustomerwherecustomerid='+id+'andcustomername='+name+');if(rs.next()){out.print(tableborder);out.print(tr);out.print(thwidth=72账号/td);out.print(thwidth=72用户名/td);out.print(thwidth=68存款银行/td);out.print(thwidth=62业务员编号/td);out.print(thwidth=70存款日期/td);out.print(thwidth=84取款日期/td);out.print(thwidth=54账户余额/td);out.print(thwidth=65利息金额/td);out.print(thwidth=50手续费/td);out.print(tr);Stringa,b,c,d,e,f,g,h,i;a=rs.getString(1);out.print(td+a+/td);b=rs.getString(2);out.print(td+b+/td);c=rs.getString(3);out.print(td+c+/td);d=rs.getString(4);out.print(td+d+/td);e=rs.getString(5);out.print(td+e+/td);f=rs.getString(6);out.print(td+f+/td);g=rs.getString(7);out.print(td+g+/td);h=rs.getString(8);out.print(td+h+/td);i=rs.getString(9);out.print(td+i+/td);out.print(tr);}elseout.print(输入有误,请重新输入!);con.close();%通过白盒测试用例对G6模块进行测试,截图如下:(1)用户ID=“hw1235”,用户名=“cat”(两个条件都正确)(2)用户ID=“aw1235”,用户名=“cat”(用户名正确)(3)用户ID=“hw1235”,用户名=“bill”(用户ID正确)(4)用户ID=“zg1235”,用户名=“tom”(两个条件都不正确)4.对软件功能的结论4.1“按用户名和ID查询”功能(G6)4.1.1能力能够实现按用户名和ID查询储户的存取款信息以及其他附带信息。4.1.2限制无5.分析摘要5.1能力本软件的“按用户名和ID查询”模块能够通过输入正确的用户名和ID查询储户的各项信息。5.2缺陷和限制:无5.3建议必须进行改进,提供更多的功能以及查询选项,如按存款日期查询,按取款日期查询等等。5.4评价本软件的查询模块能够进行按用户名和ID查询储户信息,测试基本成功,在今后的软件升级过程中要尽可能多的添加选项让用户的使用更加方便。6测试资源消耗对系统及数据库的要求较高,希望系统有更快速的反应时间,要有更大容量的存储空间。