当前位置:文档之家› 学生成绩管理系统测试报告材料

学生成绩管理系统测试报告材料

软件测试学生成绩管理系统学号::班级:指导老师:成绩:第一章数据字典1.1教师信息(Teacher):教师编号Tno CHAR(7)教师Tname NCHAR(5)所在系Tdept NV ARCHAR(20)登录密码Tpasword CHAR(6)学生信息(Student):学号Sno CHAR(7)Sname NCHAR(5)性别Sex NCHAR(1)年龄Sage TINYINT (2)所在系Sdept NV ARCHAR(20)登录密码Spasword CHAR(6)成绩信息(Grade):学号Sno CHAR(7)Sname NCHAR(5)课程编号Cno V ARCHAR(5)课程名Cname CHAR(20)平时成绩PSgrade INT(2)实验成绩SYgrade INT(2)课程设计KCSJgrade INT(2)期末总成绩Grade INT(2)课程信息(Course):课程编号Cno CHAR(10)课程名Cname CHAR(20)授课教师Tname NCHAR(5)系别dept NV ARCHAR(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位注:①教师信息由管理员录入系统②教师登录时输入编号及密码,若密码及编号信息输入正确,则提示登录系统成功,若无法登录进入系统,则提示提示密码不正确请重新登录输入域:编号所在系登录密码2.2.3学生信息部分1、学号:必须有,且为11位数,前4位为入学时间,后4位为系别与专业号,最后3位为班级号及学号2、:必须有,要求为不超过5个汉字3、性别:必须有,为“男”或“女”4、年龄:2位数,在18—80间5、所在系:必须有,具体系别要求视各学校具体情况而定6、登录密码:必须有,长度为6位0~9阿拉伯数字,且6位数不可相同且不能为连续6位注:①学生信息由各教师录入系统,学生可凭学号及密码登录系统查询自己的信息②学生登录时输入学号及密码,若密码及学号信息输入正确,则提示登录系统成功,若无法登录进入系统,则提示提示密码不正确请重新登录输入域:学号性别年龄所在系登录密码2.2.4课程信息部分1、课程编号:必须有,系统自动编号,3位2、课程名:必须有,由中英文及各种字符组成,字符长度不限3、授课教师:必须有,要求为不超过5个汉字,可为英文4、系别:必须有,具体系别要求视各学校具体情况而定注:课程信息由系统管理员录入系统,学生和教师可登录查询相关信息输入域:课程编号课程名授课教师系别1、学号:必须有,且为11位数,前4位为入学时间,后4位为系别及专业号,最后3位为班级号及学号2、:必须有,要求为不超过5个汉字3、课程编号:必须有,系统自动编号,3位4、课程名:必须有,由中英文及各种字符组成,字符长度不限5、平时成绩:必须有,0—100之间6、实验成绩:0—100之间,可以为空7、课程设计:0—100之间,可以为空8、期末总成绩:必须有,0—100之间注:学生成绩信息由各教师录入系统并进行相关管理,学生可凭学号及密码登录系统查询自己的信息输入域:学号课程编号课程名平时成绩实验成绩期末总成绩2.3因果图法设计测试用例前面介绍的等价类划分方法,是着重考虑输入条件,但未考虑输入条件之间的联系。

如果在测试时必须考虑输入条件的各种组合,可能的组合数将是天文数字。

因此必须考虑使用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例,这就需要利用因果图。

以“学生管理系统”前台中的“选课管理”为例。

在学生登录系统进行按照规定进行选课,其对应的因果图如图2.1所示。

因果表原因结果C1:课程人数已满E1:选课失败C2:已选择过这门课E1:选课失败C3:课程人数未满,未选择过这门课E2:选课成功图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(Statement Coverage)、判定覆盖DC(Decision coverage)、条件覆盖CC(Condition Coverage)、条件判定组合覆盖CDC(Condition/ Decision Coverage)条件组合覆盖MCC (Multiple Condition Coverage)和路径覆盖6种覆盖标准。

下面以本系统中学生管理的学生登录功能为例,进行测试用例。

主要代码如下:if (txtName.Text == "" || txtNum.Text == "" || txtPwd.Text == ""){MessageBox.Show("请将信息填写完整");return;}else{SqlConnection conn = BaseClass.DBCon();conn.Open();SqlCommand cmd = new SqlCommand("select count(*) fromtb_Student where StudentNum='" + txtNum.Text + "'", conn);int i = Convert.ToInt32(cmd.ExecuteScalar());if (i > 0){MessageBox.Show("密码不正确");return;}else{cmd = new SqlCommand("insert intotb_Student(StudentNum,StudentName,ClassID,StudentSex,StudentPwd) values('" +3.4.2路径分析法3.4.1控制流图设当输入的学生正确时为T1,否则为-T1 设当输入的密码正确时为T2,否则为-T2由上面的控制流程图可以得到下面的控制流图根据上面环形复杂的计算结果,有2基本独立路径path1:A-B-C-D-EPath2:A-B-C-A-B-C-D-E计算圈复杂度:给定流图G的圈复杂度V(G),定义为V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量 V(G)=7-7+2=2对上面的路径测试选取测试用例3.4.2测试用例第3章总结通过本次《教学管理系统测试计划报告》的编写以及具体测试工作的进行我深刻体会到软件测试是一个有组织有计划的活动,在整个测试活动中只有各组员团结合作才能很好的完成整个测试活动。

相关主题