学生成绩管理系统测试报告Word.docx
《学生成绩管理系统测试报告Word.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统测试报告Word.docx(27页珍藏版)》请在冰豆网上搜索。
![学生成绩管理系统测试报告Word.docx](https://file1.bdocx.com/fileroot1/2022-12/6/6a5b4b5b-7f57-4769-914d-2bfaec746a3c/6a5b4b5b-7f57-4769-914d-2bfaec746a3c1.gif)
学生成绩管理系统测试报告Word
软件测试
学生成绩管理系统
学号:
姓名:
班级:
指导老师:
成绩:
第一章数据字典
1.1教师信息(Teacher):
教师编号TnoCHAR(7)
教师姓名TnameNCHAR(5)
所在系TdeptNVARCHAR(20)
登录密码TpaswordCHAR(6)
学生信息(Student):
学号SnoCHAR(7)
姓名SnameNCHAR(5)
性别SexNCHAR
(1)
年龄SageTINYINT
(2)
所在系SdeptNVARCHAR(20)
登录密码SpaswordCHAR(6)
成绩信息(Grade):
学号SnoCHAR(7)
姓名SnameNCHAR(5)
课程编号CnoVARCHAR(5)
课程名CnameCHAR(20)
平时成绩PSgradeINT
(2)
实验成绩SYgradeINT
(2)
课程设计KCSJgradeINT
(2)
期末总成绩GradeINT
(2)
课程信息(Course):
课程编号CnoCHAR(10)
课程名CnameCHAR(20)
授课教师TnameNCHAR(5)
系别deptNVARCHAR(20)
1.2概念模型设计
根据上面数据字典设计建立相对应的概念模型,从数据字典抽象出的实体有:
教师信息实体、学生信息实体、成绩信息实体、课程信息实体。
各个实体具体的描述E-R图如下。
教师员信息实体E-R图:
图3教师员信息实体E-R图
学生信息实体E-R图:
图4学生信息实体E-R图
成绩信息实体E-R图:
图5成绩信息实体E-R图
课程信息实体E-R图:
图6课程信息实体E-R图
第2章测试计划
2.1简要说明
软件测试是软件开发时期的最后一个阶段,也是软件质量和可靠性保证中至关重要的一个环节。
软件测试的基本任务是通过在计算机上执行程序,暴露出程序潜在的错误,以便进行纠错,从而保证程序的可靠运行,降低软件的风险。
所谓测试用例,就是意发现错误为目的而精心设计的一组测试数据。
测试一个程序,需要数量足够的一组测试用例,用数据词典的表示方法表示,可以写成:
测试用例={输入数据+输出数据}
这个是式子还表明,每一个完整的测试用例不仅包含有被测程序的输入数据,而且还包括用这组数据执行被测数据之后的预期的输出结果。
每次测试,都要把实测的结果与期望结果做比较,若不相符,就表明程序可能存在错误。
白盒测试就是根据源代码进行测试的,用白盒测试涉及测试用例,有两种测试用例,有两种常用技术:
逻辑覆盖法测试用例,基本路径法测试用例。
黑盒测试就是根据被测程序功能来进行测试,所以也称为功能测试。
用黑盒法涉及测试用例,有四种常用技术;等价分类法,边界值分析法,决策表法和因果图法。
整个测试基于需求文档,看是否能满足需求文档中所有需求。
黑盒测试要求测试者在测试时不能使用与被测系统内部结构相关的知识或经验,适用于对系统的功能进行测试。
黑盒测试:
2.2等价类划分
2.2.1说明
在本学生成绩管理系统中在信息录入部分采用等价分类法。
等价分类属于黑盒测试法的一种,黑盒测试的优点比较简单,不需要了解程序内部的代码及实现,从用户的角度出发,且是基于软件开发文档,也能知道软件实现了文档中的哪些功能,在做软件自动化测试是比较方便。
黑盒测试法的缺点是覆盖率较低,自动化测试的复用性较低。
2.2.2教师信息部分
1、编号:
必须有,系统自动编号,三位
2、姓名:
必须有,要求为不超过5个汉字且可为英文
3、所在系:
必须有,具体系别因各学校具体情况而定
4、登录密码:
必须有,长度为6位0~9阿拉伯数字,且6位数不可相同且不能为连续6位
注:
1教师信息由管理员录入系统
2教师登录时输入编号及密码,若密码及编号信息输入正确,则提示登录系统成功,若无法登录进入系统,则提示提示密码不正确请重新登录
输入域:
编号姓名所在系登录密码
输出域:
是否录入/登录成功
输入
有效等价类
编号
无效等价类
编号
编号
必须有(自动编号)
1
空
8
姓名
必须有
2
空
9
不超过5个汉字
3
大于五个汉字
10
英文
4
非汉字
11
所在系
必须有(具体系别因各学校具体情况而定)
5
空
12
登录密码
长度为6位0~9阿拉伯数字
6
空
13
6位数不相同且不能连续
7
6位数相同
14
测试用例:
编号
姓名
所在系
登录密码
是否录入/登录成功
空
张三
三系
123456(连续6位)
失败
001
张三
三系
131415
成功
001
张三
三系
空
失败
002
张三
三系
1111111(6位相同)
失败
003
空
三系
131415
失败
004
张三四五六七
三系
131415
失败
005
BOA
三系
131415
成功
006
李四
空
131415
失败
007
王五
三系
131415
成功
2.2.3学生信息部分
1、学号:
必须有,且为11位数,前4位为入学时间,后4位为系别与专业号,最后3位为班级号及学号
2、姓名:
必须有,要求为不超过5个汉字
3、性别:
必须有,为“男”或“女”
4、年龄:
2位数,在18—80间
5、所在系:
必须有,具体系别要求视各学校具体情况而定
6、登录密码:
必须有,长度为6位0~9阿拉伯数字,且6位数不可相同且不能为连续6位
注:
1学生信息由各教师录入系统,学生可凭学号及密码登录系统查询自己的信息
2学生登录时输入学号及密码,若密码及学号信息输入正确,则提示登录系统成功,若无法登录进入系统,则提示提示密码不正确请重新登录
输入域:
学号姓名性别年龄所在系登录密码
输出域:
是否录入/登录成功
输入
有效等价类
编号
无效等价类
编号
学号
11位数
1
不足11位
15
前4位为入学时间
2
后4位为系别及专业号
3
大于11位
16
最后3位为班级号及学号
4
姓名
必须有
5
空
17
不超过5个汉字
6
大于5个汉字
18
非汉字
性别
男
7
空
19
女
8
年龄
2位数
9
不足或大于2位
20
18—80之间
10
小18或大于80
21
所在系
必须有(具体系别因各学校具体情况而定)
11
空
22
登录密码
长度为6位0~9阿拉伯数字
12
不足或大于6位
23
6位数不相同
13
6位相同
24
6位数不连续
14
6位连续
25
测试用例:
学号
姓名
性别
年龄
所在系
登录密码
是否录入/登录成功
空
张三
男
22
三系
131415
失败
20113006212
张三四五六七
女
22
三系
131415
失败
20113006212
张三
空
22
三系
131415
失败
20113006212
张三
男
17
三系
131415
失败
20113006212
张三
女
22
空
131415
失败
20113006212
张三
男
22
三系
123456
失败
20113006212
张三
女
22
三系
1111111
失败
20113006212
张三
男
81
三系
131415
失败
20113006212
ABC
女
22
三系
131415
失败
2011300621209
张三
男
22
三系
131415
失败
20113062
张三
女
22
三系
131415
失败
20113006212
张三
男
22
三系
131415
成功
2.2.4课程信息部分
1、课程编号:
必须有,系统自动编号,3位
2、课程名:
必须有,由中英文及各种字符组成,字符长度不限
3、授课教师:
必须有,要求为不超过5个汉字,可为英文
4、系别:
必须有,具体系别要求视各学校具体情况而定
注:
课程信息由系统管理员录入系统,学生和教师可登录查询相关信息
输入域:
课程编号课程名授课教师系别
输出域:
是否录入登录成功
输入
有效等价类
编号
无效等价类
编号
课程编号
必须有(系统自动编号)
1
空
9
课程名
必须有
2
空
10
中英文及各种字符组成
3
长度不限
4
授课教师
必须有
5
空
11
不超过5个汉字
6
大于5位中文
12
英文
7
系别
必须有(具体系别因各学校具体情况而定)
8
空
13
测试用例:
课程编号
课程名
授课教师
系别
是否录入成功
空
《软件测试》
张三
三系
失败
001
空
张三
三系
失败
002
《软件测试》
张三四五六七
三系
失败
003
《软件测试》
张三
空
失败
004
《软件测试》
BOA
三系
成功
005
《软件测试》
李四
三系
成功
3.3.5学生成绩信息
1、学号:
必须有,且为11位数,前4位为入学时间,后4位为系别及专业号,最后3位为班级号及学号
2、姓名:
必须有,要求为不超过5个汉字
3、课程编号:
必须有,系统自动编号,3位
4、课程名:
必须有,由中英文及各种字符组成,字符长度不限
5、平时成绩:
必须有,0—100之间
6、实验成绩:
0—100之间,可以为空
7、课程设计:
0—100之间,可以为空
8、期末总成绩:
必须有,0—100之间
注:
学生成绩信息由各教师录入系统并进行相关管理,学生可凭学号及密码登录系统查询自己的信息
输入域:
学号姓名课程编号课程名平时成绩实验成绩期末总成绩
输出域:
是否录入成功
输入
有效等价类
编号
无效等价类
编号
学号
11位数
1
大于11位
19
前4位为入学时间
2
后4位为系别及专业号
3
不足11位
20
最后3位为班级号及学号
4
姓名
必须有
5
空
21
不超过5个汉字
6
大于5个汉字
22
非汉字
23
课程编号
必须有(系统自动编号)
7
空
24
课程名
必须有
8
空
25
中英文及各种字符组成
9
26
长度不限
19
平时成绩
必须有
11
空
27
0—100之间
12
大于100
28
实验成绩
可为空
13
大于100
29
0—100之间
14
课程设计
可为空
15
大于100
30
0—100之间
16
期末总成绩
必须有
17
空
31
0—100之间
18
大于100
32
测试用例:
学号
姓名
课程
编号
课程名
平时
成绩
实验
成绩
课程
设计
期末
总成绩
是否录
入成功
空
张三
001
《软件测试》
80
80
90
失败
201130062129
张三
002
《软件测试》
80
80
90
失败
20115007
张三
003
《软件测试》
80
80
90
失败
20113006212
空
004
《软件测试》
80
80
90
失败
20113006212
张三四五六七
005
《软件测试》
80
80
90
失败
20113006212
ABC
006
《软件测试》
80
80
90
失败
20113006212
李四
空
《软件测试》
80
80
90
失败
20113006212
李四
007
空
80
80
90
失败
20113006212
李四
008
《软件测试》
101
80
90
失败
20113006212
王五
009
《软件测试》
80
101
90
失败
20113006212
王五
010
《软件测试》
80
101
90
失败
20113006212
王五
011
《软件测试》
80
80
101
失败
20113006212
宝儿
012
《软件测试》
80
80
100
成功
2.3因果图法设计测试用例
前面介绍的等价类划分方法,是着重考虑输入条件,但未考虑输入条件之间的联系。
如果在测试时必须考虑输入条件的各种组合,可能的组合数将是天文数字。
因此必须考虑使用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例,这就需要利用因果图。
以“学生管理系统”前台中的“选课管理”为例。
在学生登录系统进行按照规定进行选课,其对应的因果图如图2.1所示。
因果表
原因
结果
C1:
课程人数已满
E1:
选课失败
C2:
已选择过这门课
E1:
选课失败
C3:
课程人数未满,未选择过这门课
E2:
选课成功
E
图2.1因果图
图2.2选课
表2.1选课图解列表
用例编号
用例标题
输入数据
操作步骤
期望结果
1
选课人数
选课人数满了
登录不同学生的学号使选课人数达到上限在登录测试学号选课
选课失败
2
是否选择过这门课
选择过这门课
登录测试学生学号先选择1次退出后再次登录进行选课同1门课
选课失败
3
正常选课
选课
按照规定进行选课
选课成功”
2.4决策表法设计测试用例
决策表又称判断表,是一种呈表格状的图形工具,适用于描述处理判断条件较多,各条件又相互组合、有多种决策方案的情况。
精确而简洁描述复杂逻辑的方式,将多个条件与这些条件满足后要执行动作相对应。
结合软件测试,条件作为程序输入,动作看做程序输出,规则就是测试用例。
决策表的建立应该根据软件规格说明,步骤如下:
①确定规则的个数。
假如有n个条件,每个条件有两个取值(0,1),故有2n种规则。
②列出所有的条件桩和动作桩。
③输入条件项。
④填入动作项。
制定初始决策表。
⑤简化。
合并相似规则或者相同动作。
适合使用决策表设计测试用例的条件:
①规格说明以决策表的形式给出,或很容易转换成决策表。
②条件的排列顺序不影响执行哪些操作。
③规则的排列顺序不影响执行哪些操作。
④当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
⑤如果某一规则要执行多个操作,这些操作的执行顺序无关紧要。
下面以学生成绩管理系统的课程信息作为测试用例进行测试。
条件:
C1选择课程编号、C2选择课程标题、C3选择授课教师
动作:
E1信息填写为完整、E2信息填写有误、E3上传成功
决策表
规则选择
1
2
3
4
5
6
7
8
条
件
C1
0
0
0
1
0
1
1
1
C2
0
0
1
0
1
0
1
1
C3
0
1
0
0
1
1
0
1
动
作
E1
1
1
1
1
1
1
1
0
0
E2
0
0
0
0
0
0
0
1
0
E3
0
0
0
0
0
0
0
0
1
经过简化可得决策表如下:
规则选择
1
2
3
4
条
件
C1
0
—
—
1
C2
—
0
—
1
C3
—
—
0
1
动
作
E1
1
1
1
0
0
E2
0
0
0
1
0
E3
0
0
0
0
1
决策表测试用例
用例编号
用例标题
输入数据
操作步骤
期望结果
1
选择课程编号
“”
不选择下拉列表框
提示请将信息填写完整
2
选择课程标题
“”
1、不选择下拉列表框
提示请将信息填写完整
3
选择授课教师
“”
1、不选择下拉列表框
提示请将信息填写完整
4
课程编号和课程标题标题和授课教师
1111软件测试吴晓燕老师
选择下拉列表框内容
选择下拉列表框内容
选择课程
提示上传成功
白盒测试:
3.4.1逻辑覆盖法设计测试用例
逻辑覆盖主要是以程序内部的逻辑结构为基础来设计测试用例。
逻辑覆盖有语句覆盖SC(StatementCoverage)、判定覆盖DC(Decisioncoverage)、条件覆盖CC(ConditionCoverage)、条件判定组合覆盖CDC(Condition/DecisionCoverage)条件组合覆盖MCC(MultipleConditionCoverage)和路径覆盖6种覆盖标准。
下面以本系统中学生管理的学生登录功能为例,进行测试用例。
主要代码如下:
if(txtName.Text==""||txtNum.Text==""||txtPwd.Text=="")
{
MessageBox.Show("请将信息填写完整");
return;
}
else
{
SqlConnectionconn=BaseClass.DBCon();
conn.Open();
SqlCommandcmd=newSqlCommand("selectcount(*)fromtb_StudentwhereStudentNum='"+txtNum.Text+"'",conn);
inti=Convert.ToInt32(cmd.ExecuteScalar());
if(i>0)
{
MessageBox.Show("密码不正确");
return;
}
else
{
cmd=newSqlCommand("insertintotb_Student(StudentNum,StudentName,ClassID,StudentSex,StudentPwd)values('"+txtNum.Text.Trim()+"','"+txtName.Text.Trim()+"','"+txtClass.Text.Trim()+"','"+rblSex.SelectedValue.ToString()+"','"+txtPwd.Text.Trim()+"')",conn);
cmd.ExecuteNonQuery();
conn.Close();
MessageBox.Show("登录成功");
btnConcel_Click(sender,e);
}
该函数的流程图如图1.1所示:
T
F
T
F
图1.1登录函数流程图
T
F
T
F
图1.2登录过程的判定条件和过程记录
1、语句覆盖
选择足够多的测试数据,使被测程序中每条语句至少执行一次;缺点:
对程序执行逻辑的覆盖很低。
从图1.1中可以看出要想覆盖所有语句,三条路径都必须执行一次。
语句覆盖法测试用例列表如表1.1所示。
表1.1语句覆盖法测试用例表
编号
输入数据
通过路径
用例1
Sno=””&&Spassword=””
M—A1
用例2
Sno=”张三”&&Spassword=”1234”
M—N—A1
用例3
Sno=”李四啊啊”&&Spassword的=’xx”
M—N—A2
2、判定覆盖
设计足够多的测试用例,使得程序中的每一个判定至少获得一次‘真’值和‘假’值,或者使得程序中的每一个取‘真’分支或取‘假’分支至少经历一次,因此又称分支覆盖可以满足语句覆盖;
缺点:
主要对整个表达式最终取值进行度量,忽略了表达式内部取值。
因此判定覆盖也需要执行上面的三种路径,所以它的用例和语句覆盖一样。
如表1.2所示。
表1.2判定覆盖法测试用例表
编号
输入数据
通过路径
用例1
Sno=””&&Spassword=””
M—A1
用例2
Sno=”张三”&&Spassword=”1234”
M—N—A1
用例3
Sno=”李四啊啊”&&Spasswor=’xx”
M—N—A2
3.4.2路径分析法
3.4.1控制流图
设当输入的学生帐号正确时为T1,否则为-T1
设当输入的密码正确时为T2,否则为-T2
由上面的控制流程图可以得到下面的控制流图
根据上面环形复杂的计算结果,有2基本独立路径
path1:
A-B-C-D-E
Path2:
A-B-C-A-B-C-D-E
计算圈复杂度:
给定流图G的圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量
V(G)=7-7+2=2
对上面的路径测试选取测试用例
测试用例
通过路径
覆盖条件
预期输出结果
学生学号
登陆密码
20113006212
131415
ABCDE
T1,T2
录入成功
2011300621213
131415
ABGABCDEF
-T1,T2
录入失败
20113006212
666666
ABCDHCDEF
T1,-T2
录入失败
3.4.2测试用例
教师登录模块
测试用例
输入
预期输出结果
教师编号
登录密码
TC1
001
131415
登录成功
TC2
002
123456
登录失败
TC3
0003
131415
登录失败
TC4
004
131415
登录成功
TC5
005
131415
登录成功
TC6
006
131415
登录成功
TC7
007
131415
登录成功
TC8
008
131415
登录成功
TC9
009
131415
登录成功
TC10
010
131415
登录成功
学生信息录入模块
用例编号
输入
预期输出结果
学号
姓名
性别
年龄
所在系
1
2011300621205
张三
男
一
录入失败
2
20113006212
空
女
18
二
录入失败
3
20113006212
张三四五六七
男
19
三
录入失败
4
20113006212
李四
空
20
四
录入失败
5
20113006