1、北方民族大学课程设计报告 系(部、中心) 计算机科学与工程学院 姓 名 李榜明 学 号 2023 专 业 软件工程 班 级 三 同组人员 课程名称 软件测试技术 设计题目名称 网上书店系统测试分析报告 起止时间 2023年4月2023年5月 成 绩 指导教师署名 任 荣 北方民族大学教务处制目 录1.引言11.1测试分析报告编写目的11.2 参考资料12.静态测试错误报告12.1 测试对象及参考规范12.2静态测试缺陷报告43.测试用例83.1 单元测试用例设计83.2 集成测试用例设计113.3 系统测试用例设计124.缺陷报告125.测试总结165.1 测试覆盖率165.2 测试登记表16
2、5.3 测试记录图17参考文献171. 引言1.1测试分析报告编写目的 为了发现和报告网上书店统系统图书管理模块的错误和缺陷。通过测试,保证本系统的功能、互操作性等符合软件的设计规定,满足用户的使用规定。通过度析错误产生的因素和错误的分布特性,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便对系统进行进行升级时进行改善。1.2 参考资料表1-1:参考资料列表参考资料是否可用备注需求规格说明书是无系统设计说明书是无系统原型是无系统源码是无用户使用手册无无测试计划是无2. 静态测试错误报告2.1 测试对象及参考规范测试对象:系统分析设计说明书和图书管理模块功能代码参考规范:软件编程规范作者:
3、徐人凤 孙宏伟 王梅 测试对象为图书模块。功能模块代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Data.SqlClient;using System.Data;public class books /定义ADO.net对象 SqlConnection mycon = new SqlConnection(); SqlDataAdapter myadpt = new SqlDataAdapter(); DataSet myds = new Dat
4、aSet(); public object ds; /属性 public int booksId get; set; public string booksName get; set; public string booksIntro get; set; public float bookPrice get; set; public int booksNum get; set; public string publisher get; set; public string photo get; set; public string type get; set; /字段 public strin
5、g sqlstr; public string bookinfo; /连接服务器,数据库 public void conn() mycon.ConnectionString = Data Source=QH-20231121JQID;Initial Catalog=bookstore;user ID=lbm;password=921210; /后台方法 /查询图书 public void selectbook(string bookid) sqlstr = select top 1 * from books where booksId= + bookid + ; myadpt.SelectCo
6、mmand = new SqlCommand(sqlstr, mycon); myds.Clear(); myadpt.Fill(myds); booksId=int.Parse(myds.Tables0.Rows0.ItemArray.GetValue(0).ToString(); booksName=myds.Tables0.Rows0.ItemArray.GetValue(1).ToString(); booksIntro=myds.Tables0.Rows0.ItemArray.GetValue(2).ToString(); bookPrice=float.Parse(myds.Tab
7、les0.Rows0.ItemArray.GetValue(3).ToString(); booksNum=int.Parse(myds.Tables0.Rows0.ItemArray.GetValue(4).ToString(); publisher=myds.Tables0.Rows0.ItemArray.GetValue(5).ToString(); photo=myds.Tables0.Rows0.ItemArray.GetValue(6).ToString(); type = myds.Tables0.Rows0.ItemArray.GetValue(7).ToString(); /
8、添加图书 public void addbook() sqlstr = insert into books(booksId, booksName, booksIntro, booksPrice, booksNum, publisher, photo, bookstype) values( + booksId + , + booksName + , + booksIntro + , + bookPrice + , + booksNum + , + publisher + , + photo + , + type + ); ; myadpt.SelectCommand = new SqlComma
9、nd(sqlstr, mycon); myds.Clear(); myadpt.Fill(myds); /删除图书 public void deletebook(string booksid) sqlstr = delete from books where booksId= + booksid + ; myadpt.SelectCommand = new SqlCommand(sqlstr, mycon); myds.Clear(); myadpt.Fill(myds); /修改图书 public void updatebook(string booksid) sqlstr = update
10、 books set booksId= + booksId + ,booksName= + booksName + ,booksIntro= + booksIntro + ,booksPrice= + bookPrice + ,booksNum= + booksNum + ,publisher= + publisher + ,bookstype= + type + where booksId= + booksid + ; myadpt.SelectCommand = new SqlCommand(sqlstr, mycon); myds.Clear(); myadpt.Fill(myds);
11、/浏览图书 public void browsebook() sqlstr = select * from books; myadpt.SelectCommand = new SqlCommand(sqlstr, mycon); myds.Clear(); myadpt.Fill(myds); ds = myds.Tables0; /图书管理删除图书 protected void Button3_Click(object sender, EventArgs e) GridView1.Visible = false; book.conn(); int bookid=0; Boolean f =
12、false; if (TextBox1.Text = ) Label1.Text = 图书编号不能空!; else bookid =int.Parse(TextBox1.Text); if (bookid 1000) Label1.Text = 图书编号的不会是负数或者四位数!; else try book.deletebook(bookid); f = true; catch f = false; if (f = true) Label2.Text = 删除成功|; else Label2.Text = 删除失败,没有此书; 2.2 静态测试缺陷报告表2-1静态测试缺陷报告1缺陷记录编号ST
13、_Bug_1测试项目系统分析与设计说明书测试人员李榜明测试日期2023.4.11优先级中缺陷解决人陈勇缺陷描述一级目录的字体比二级目录的字体小附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人李榜明解决日期2023.4.11验证日期2023.4.11缺陷是否解决是验证是否通过是备注静态测试表2-2静态测试缺陷报告2缺陷记录编号ST_Bug_2测试项目系统分析与设计说明书测试人员李榜明测试日期2023.4.11优先级低缺陷解决人陈勇缺陷描述页码在更新之后,第一页的页码没有,页码的附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人李榜明解决日期2023.4.11验证日期2023.4.11缺陷是否解决是验证是否
14、通过未备注静态测试表2-3静态测试缺陷报告3缺陷记录编号ST_Bug_3测试项目系统分析与设计说明书测试人员李榜明测试日期2023.4.11优先级高缺陷解决人陈勇缺陷描述管理员用例图中,图书管理用例下的浏览和查询用例应当只出现一个附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人陈勇解决日期2023.4.11验证日期2023.4.11缺陷是否解决未验证是否通过未备注静态测试表2-4静态测试缺陷报告4缺陷记录编号ST_Bug_4测试项目系统分析与设计说明书测试人员李榜明测试日期2023.4.11优先级高缺陷解决人陈勇缺陷描述在UML数据建模中,购物车跟图书应当只是一个引用的关系,可以用数组去实现,而不
15、应当存在一对多的关系。假如你把图书加到购物车中,你要删除或者减少数量,则是直接对数据库中的图书操作,并且图书不是属于某个购物车的,相称于一个购物车只能装一种图书,显然不合理附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人解决日期2023.4.11验证日期2023.4.11缺陷是否解决否验证是否通过否备注静态测试表2-5静态测试缺陷报告5缺陷记录编号ST_Bug_5测试项目图书管理模块代码测试人员李榜明测试日期2023.4.11优先级高缺陷解决人陈勇缺陷描述查询图书的参数应当是一个整型的变量附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人陈勇解决日期2023.4.11验证日期2023.4.11缺陷是否解
16、决未验证是否通过未备注静态测试3. 测试用例3.1 单元测试用例设计 (1)、白盒测试用例设计 1)程序流程图465321 图 3-1 图书管理删除图书程序流程图 2)白盒测试用例表3-1 图书管理-删除图书白盒测试:(测试用例编号:TUC_1)测试用例项(输入)覆盖途径覆盖条件覆盖条件组合预期输出实际输出TextBox1.Text =”覆盖途径:1-6-4覆盖条件:T1Label1.Text=“图书编号不能为空”Label2.Text = 删除失败,没有此书Label1.Text=“图书编号不能为空”Label2.Text = 删除失败,没有此书TextBox1.Text =”-1”覆盖途径
17、:1-2-4覆盖条件:F1,T2Label1.Text = 图书编号的不会是负数或者四位数!Label2.Text = 删除失败,没有此书Label1.Text = 图书编号的不会是负数或者四位数!Label2.Text = 删除失败,没有此书TextBox1.Text =”2”覆盖途径1-3-4覆盖条件F1,F2,F3Label2.Text = 删除成功|.Label2.Text = 删除成功|TextBox1.Text =”hjhjg”覆盖条件F1Label2.Text = 删除失败,没有此书出现FormatException was unhandledBy user code异常Text
18、Box1.Text =”25”覆盖途径:1-3-5覆盖条件F1,F2,T3Label2.Text = 删除失败,没有此书Label2.Text = 删除失败,没有此书 (2)、黑盒测试用例设计 1)等价类/边界值测试用例表3-2:等价类/边界值用例表:测试用例编号TUC_2测试项目图书管理模块删除图书重要级别高测试人员李榜明测试日期2023.4.24功能描述输入图书编号,在数据库中把此编号的图书删去前提条件测试项编号输入等价类/边界值预期的输出1Textbox=”25”有效等价类1/正常值Label2.Text=”删除成功”2Textbox=”1001”无效等价类1/上边界+1Label2.T
19、ext=”没有找到此书,删除失败”3Textbox=”-1”无效等价类2/下边界值-1Label2.Text=”没有找到此书,删除失败”4Textbox=”#¥#¥#”无效等价类3/特殊字符Label2.Text=”没有找到此书,删除失败”5Textbox=”ased”无效等价类4/纯字符Label2.Text=”没有找到此书,删除失败”6Textbox=”ss123”无效等价类5/字母数字组合Label2.Text=”没有找到此书,删除失败”7Textbox=”0”无效等价类5/下边界值Label2.Text=”没有找到此书,删除失败”备注图 3-2 等价类/边界值TP截屏2)、网上书店后台
20、登陆因果图法 图3-3 网上书店后台登陆因果图TP截屏 图3-4 网上书店后台登陆因果图法鉴定表TP截屏 图3-5 网上书店后台登陆因果图法测试用例TP截屏3.2 集成测试用例设计图3-6 网上书店后台登陆集成测试用例TP截屏3.3 系统测试用例设计图3-6 系统测试用例TP截屏4. 缺陷报告(1)、单元测试缺陷报告表4-1:白盒测试缺陷报告1缺陷记录编号SUC_1_Bug_1测试项目删除图书测试人员李榜明测试日期2023.5.4优先级中缺陷解决人陈勇缺陷描述当输入TextBox1.Text =”hjhjg”时, Label2.Text = 删除失败,没有此书,而不是报错。附件(缺陷截图)缺陷
21、解决人陈勇缺陷解决验证人李榜明解决日期2023.5.5验证日期2023.5.5缺陷是否解决是验证是否通过是备注静态测试表4-2:白盒测试缺陷报告2缺陷记录编号SUC_1_Bug_2测试项目删除图书测试人员李榜明测试日期2023.5.6优先级中缺陷解决人陈勇缺陷描述由于数据库中有编号为2这本书,所以输入TextBox1.Text =”2”正常值,先通过查询看是否有此书时,有的再删除。此时发现查询到了此书,并且可以删除,但是图片显示不了附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人李榜明解决日期2023.5.6验证日期2023.5.6缺陷是否解决是验证是否通过是备注白盒测试表4-3:黑盒测试缺陷报告
22、1缺陷记录编号SUC_2Bug_1测试项目删除图书测试人员李榜明测试日期2023.5.6优先级中缺陷解决人陈勇缺陷描述当输入Textbox=”25”这一有效等价类时,Label2.Text=”删除成功”,事实上不应当是这个结果,由于数据库中没有这本书。附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人李榜明解决日期2023.5.6验证日期2023.5.6缺陷是否解决是验证是否通过是备注黑盒测试表4-4:黑盒测试缺陷报告2缺陷记录编号SUC_2Bug_1测试项目删除图书测试人员李榜明测试日期2023.5.6优先级中缺陷解决人陈勇缺陷描述当输入Textbox=”0”这一无效等价类(下边界值)时,Labe
23、l1.Text=” 图书编号的不会是负数或者四位数!”,Label2.Text=”删除失败”,理论上Label2.Text=”没有找到此书,删除失败”。附件(缺陷截图)缺陷解决人陈勇缺陷解决验证人李榜明解决日期2023.5.6验证日期2023.5.6缺陷是否解决是验证是否通过是备注黑盒测试(2)、集成测试缺陷报告 图4-1 集成测试缺陷报告1TP截屏图4-2 集成测试缺陷报告2TP截屏5. 测试总结5.1 测试覆盖率5.2.1 源代码测试覆盖率 源代码测试覆盖率为85%5.2.2 需求测试覆盖率需求测试覆盖率为90%5.2 测试登记表表5-1:测试登记表测试系统名称网上书店系统测试用例记录结果
24、(数量)通过6不通过2总计8缺陷记录结果(数量)致命缺陷1数据定义缺陷1功能缺陷2需求缺陷0界面问题0设计缺陷5程序逻辑缺陷1性能缺陷1缺陷总计数量115.3 测试记录图图5-1 网上书店系统测试记录图参考文献1 德Spillner,Linz,挪Schaefer著,刘琴等译,软件测试基础(第2版),人民邮电出版社,2023年4月2朱少民,软件测试方法和技术,清华大学出版社, 2023年7月 3教育部考试中心/教育部考试中心,全国计算机等级考试四级教程 - - 软件测试工程师(2023年版) ,高等教育出版社,2023年9月4赵斌,软件测试技术经典教程(第二版),科学出版社,2023年3月5美Paul C.Jorgensen,软件测试(原书第2版),机械工业出版社,2023年4月