软件工程实验3软件测试技术实验

合集下载

软件测试实验报告

软件测试实验报告

软件测试实验报告
一、实验内容
本次实验的目的是通过白盒测试技术来对一个接口进行测试,目的是
为了评估接口的可用性和功能性,以及其在各种参数下的表现。

二、实验方法
1.确定测试的边界值:首先,根据接口文档,确定出各个参数的最小值、最大值和正常值,并根据边界值理论,选择出8个典型的测试值,即
最小值、最小值减一、最小值加一、正常值、正常值减一、正常值加一、
最大值、最大值加一,用于确定测试的边界。

2.编写测试用例:用确定的边界值,编写测试用例,以检测接口的可
用性和功能性。

3.执行测试:将编写的测试用例应用到实际情况中,对接口进行测试,并获得测试结果。

三、实验结果
1.测试结果:经过本次白盒测试,发现接口在各个参数下能够正常工作。

2.整体结论:在确定的边界值范围内,接口表现正常,可以满足对该
接口的功能和可用性的要求。

四、实验的建议
本次实验证明,白盒测试在评估接口的可用性和功能性方面是有效的。

但是,为了进一步提高接口的性能,还需要进行更加全面的测试,比如性
能测试、安全测试等,以便获得更好的测试效果。

软件工程实验报告

软件工程实验报告

软件工程实验报告一、实验目的。

本实验旨在通过对软件工程的实际操作,加深对软件工程理论知识的理解,提高学生的软件开发能力。

具体目的包括:1. 熟悉软件工程的基本概念和原理;2. 掌握软件需求分析、设计、编码、测试等基本方法和技术;3. 提高团队协作能力和项目管理能力。

二、实验内容。

本次实验内容主要包括以下几个方面:1. 软件需求分析,通过对一个实际问题的需求收集和分析,明确软件的功能和性能需求;2. 软件设计,根据需求分析的结果,进行软件系统的总体设计和详细设计;3. 软件编码,根据设计文档,进行软件的编码工作;4. 软件测试,对编码完成的软件进行测试,确保软件的质量和稳定性。

三、实验过程。

1. 软件需求分析阶段。

在软件需求分析阶段,我们小组首先进行了需求的收集和整理工作。

通过与用户的沟通和调研,我们明确了软件的功能需求和性能需求,并对其进行了详细的文档记录。

在需求分析的过程中,我们也发现了一些需求之间的冲突和不完整之处,因此进行了进一步的讨论和修正。

2. 软件设计阶段。

在需求分析阶段完成后,我们进行了软件系统的总体设计和详细设计工作。

在总体设计阶段,我们确定了软件的整体架构和模块划分,明确了各个模块之间的接口和关系。

在详细设计阶段,我们对每个模块进行了具体的设计,包括算法、数据结构、接口等方面的设计。

3. 软件编码阶段。

在软件设计完成后,我们开始了软件的编码工作。

在编码阶段,我们严格按照设计文档的要求进行编码,注重代码的规范和可读性。

在编码过程中,我们也进行了一些单元测试,确保编码的正确性和稳定性。

4. 软件测试阶段。

在软件编码完成后,我们进行了软件的测试工作。

在测试阶段,我们采用了黑盒测试和白盒测试相结合的方法,对软件进行了功能测试、性能测试、安全测试等多方面的测试。

在测试过程中,我们发现了一些问题并及时进行了修复。

四、实验总结。

通过本次实验,我们深刻地体会到了软件工程理论知识在实际项目中的应用,提高了我们的团队协作能力和项目管理能力。

软件工程导论实验指导书 实验3:代码复查、编译

软件工程导论实验指导书  实验3:代码复查、编译

软件工程导论实验三:代码复查、编译[ 实验日期 ] 年月日[ 实验目的 ]学习如何利用代码复查检查表快速而有效地发现程序中的缺陷。

[ 实验内容 ]按照代码复查脚本规定的流程,对照代码复查检查表检查源代码并记录。

编译程序,测试程序,修复所有缺陷,同时填写缺陷记录日志。

[ 实验原理和步骤]如果想发现和改正程序的每一个缺陷,就必须遵照一个精确的规程。

检查表可以帮助确保遵循这个规程。

检查表也是一个构思的来源。

当按照检查表去做时,就知道如何进行代码复查。

检查表包括了个人的经验。

通过不断地使用和改进个人检查表,可以更好地发现在程序中的缺陷。

[ 实验报告要求]《学生填写》填写代码复查检查表《学生填写》填写缺陷记录日志。

[注意事项][实验总结 ]①对重点实验结果进行分析;比如自己总查不出哪种错误②实验中的问题和提高:对老师或自己的编码进行评价,指出合理和不足之处,提出改进的方案。

③收获与体会:《学生填写》实验总结附录一:代码复查脚本附录而二:代码复查检查表C++代码复查指南和检查表程序名和程序号#一般性说明: 在完成每个复查步骤之后,将发现的某个类型的缺陷的个数记录在右面的栏目中。

如果该步骤没有发现缺陷,就在右面的栏目中打个表示检查无误的交叉符号(X)。

在开始复查下一个程序单元之前,要按照检查表完成对程序,类,对象或方法的检查检查内容函数1 函数2函数3累计数累计%完整性验证设计的所有功能都已经编码XXXIncludes 验证Include语句是完全的XXX初始化检查变量和参数的初始化:●在程序的开始;●在每个循环的开始;●在函数/过程的入口XXX调用检查函数调用的格式:XXX附录三:缺陷类型附录四:缺陷记录日志缺陷记录日志学生日期教员程序号日期编号类型引入阶段排除阶段修复时间相关缺陷。

软件测试实验报告

软件测试实验报告

本科实验报告课程名称:软件测试技术实验项目:软件测试技术试验实验地点:实验楼211专业班级:软件工程学号:学生姓名:戴超指导教师:兰方鹏2015年10月7日太原理工大学学生实验报告(用户名:Aaron密码:mercury)(2)添加QTP自带示例程序(3)在弹出的“FlightReservation”窗口中选择订票日期、出发地和目的地,然后选择“Flight”图标选择航班。

(4)在弹出的“flighttable”表中选择一趟航班,点击“ok”按钮返回,在Name中填写订票人姓名,选择订票数目“tickets”和仓位“class”然后点击“installorder”按钮,生成订单。

(5)点击QTP主界面工具栏中的“Stop”按钮,停止脚本录制。

保存脚本并对脚本进行回放。

(6)插入检查点验证订单是否生成。

在actionscreen视图中的orderno 标签对应的文本框中点鼠标右键,在弹出的快捷菜单中选择“insertstandardcheckpoint”,在弹出的对话框中,单击ok,选中text(11)参照以上实验,再添加一个验证login界面中“agentname”的检查点。

(12)设计能够通过校验的正则表达式^\w{4,16}$,并回放成功。

(13)设计不能通过校验的正则表达式^\w{1,4}$并回放失败如下五、实验结果与分析1.第一个检查点的添加中最后传真订单回放失败原因分析:提交订单并发送传真的时候,该系统会自动生成一个订单号,而进行回放的时候又会生成另一个订单号,然后后续回放失败,因为和之前录制时的订单号不匹配,找不到从而中端回放。

修改:停止回放之后右键列表中的FaxOrderNo.xx的ObjectProperties,在弹出的窗口中点击text的value值中的图标“<#>”,弹出的对话框中把constant中的值改成如下,即FaxOrderNo\.[0-9]+,然后保存关闭。

《软件工程》实验指导书-卓越项目

《软件工程》实验指导书-卓越项目

《软件工程》实验指导书太原理工大学计算机科学与技术学院2013年3月目录第一部分实验教学大纲 (1)第二部分实验说明 (3)实验一软件工程的网上资源与常用的CASE工具 (3)实验二传统软件开发方法的可行性研究 (5)实验三传统软件开发方法的需求分析建模 (6)实验四传统软件开发方法的结构设计 (7)实验五系统测试 (8)实验六面向对象的分析与设计 (9)实验七软件项目管理 (10)附录一实验题目 (11)第一部分实验教学大纲课程名称:软件工程(Software Engineering)课程总学时: 48 学时[理论: 40 学时;实验: 8 学时]课程总学分: 3 学分适用专业和年级:计算机科学与技术、软件工程专业一、实验的目的与任务本实验课程通过完整地实施软件生命周期各阶段的任务,让学生系统地学习到软件开发过程的主要理论、方法、技术、标准和规范,使他们具备基本的软件开发设计能力;通过软件工程中常用CASE工具和软件项目管理的实践,使他们具备运用各种工具完成项目设计和实施的基本技能;通过集体项目开发,培训学生的合作意识和团队精神,培养学生对技术文档的编写能力。

二、实验内容和要求本课程的实验内容包括结构化(生命周期法)的方法学和面向对象的方法学。

通过一个模拟项目,要求学生分别用结构化方法和面向对象的方法完成系统的分析、设计和实现的整个软件开发过程。

此外实验中引入我国国家《计算机开发规范》,以规范技术文档的书写标准,提高实验教学质量。

实验要求学生采用“项目小组”的形式,结合具体的开发项目进行分析、设计。

每个项目小组必须按照《软件工程实验指导书》附录中给定的文档规范标准提供项目文档;具体要求如下:1.班级按项目不进行分组。

2.每个人均为负责人或项目经理,由项目经理召集项目组成员讨论、选定开发项目,所有实验中都要采用同一个实验题目。

项目开发的每项任务要规定该任务的起止日期和时间。

3.每个项目均要进行需求分析,完成需求分析报告,修订并评审需求分析报告,确定系统的需求分析模型。

《软件工程》实验教案

《软件工程》实验教案

《软件工程》实验教案一、实验目的1. 让学生了解软件工程的基本概念、原则和方法。

2. 培养学生运用软件工程知识分析和解决实际问题的能力。

3. 加深学生对软件开发过程的理解,提高团队协作和沟通能力。

二、实验内容1. 实验一:软件工程概述了解软件工程的定义、目的、历史和发展趋势。

掌握软件开发过程中的基本活动和相关工具。

2. 实验二:需求分析学习需求分析的基本方法,如问卷调查、访谈、观察等。

实践使用需求分析工具,如UseCase图、DFD图等。

3. 实验三:软件设计掌握软件设计的基本原则,如模块化、抽象、封装等。

学习软件设计的方法,如结构化设计、面向对象设计等。

4. 实验四:编码与实现熟悉编程语言的基本语法和编程规范。

5. 实验五:软件测试了解软件测试的目的、方法和过程。

学习使用测试工具进行单元测试、集成测试和系统测试。

三、实验步骤1. 实验一:软件工程概述讲解软件工程的定义、目的、历史和发展趋势。

介绍软件开发过程中的基本活动和相关工具。

2. 实验二:需求分析讲解需求分析的基本方法。

练习使用需求分析工具,如UseCase图、DFD图等。

3. 实验三:软件设计讲解软件设计的基本原则和方法。

练习进行结构化设计和面向对象设计。

4. 实验四:编码与实现讲解编程语言的基本语法和编程规范。

5. 实验五:软件测试讲解软件测试的目的、方法和过程。

练习使用测试工具进行单元测试、集成测试和系统测试。

四、实验要求1. 实验一:软件工程概述2. 实验二:需求分析完成一个简单的需求分析案例,绘制UseCase图和DFD图。

3. 实验三:软件设计完成一个简单的软件设计案例,包括结构化设计和面向对象设计。

4. 实验四:编码与实现5. 实验五:软件测试五、实验评价1. 实验一:软件工程概述评价学生对软件工程基本概念的理解程度。

2. 实验二:需求分析评价学生对需求分析方法的掌握程度。

3. 实验三:软件设计评价学生对软件设计原则和方法的掌握程度。

软件工程形考三实验

软件工程形考三实验

软件工程形考三实验实验目的本实验旨在通过设计和实现一个软件项目,加深对软件工程理论和实践的应用,提高软件项目设计与开发的能力。

实验内容1. 确定软件项目的需求和目标,并进行需求分析和概要设计。

2. 根据需求和设计编写代码,完成软件项目的详细设计与实现。

3. 进行软件项目的测试,修复bug并进行性能优化。

4. 完成软件项目的文档撰写,包括实验报告和用户手册等。

实验步骤需求分析与概要设计,根据软件项目的需求,进行需求分析与概要设计。

对于此次实验,我们假设软件项目是一个在线购物系统,具备以下功能:用户注册与登录商品浏览与搜索购物车管理订单管理支付与配送在需求分析阶段,分析每个功能的详细需求和用户交互流程,并进行概要设计,确定系统的整体架构和各个模块的关系与功能。

详细设计与实现根据概要设计的结果,进行详细设计与编码实现。

在这个阶段,需要确定每个功能的具体实现方式,设计数据库、界面和业务逻辑等。

在编码实现过程中,要注意编码规范、模块化设计和代码可重用性。

测试与优化完成软件项目的实现后,进行测试。

测试需要分别对每个功能进行单元测试和整体集成测试,发现bug并进行修复。

对软件的性能进行评估,进行性能优化,保证系统能够稳定可靠地运行。

文档撰写,完成软件项目的文档撰写工作。

包括实验报告、用户手册和技术文档等。

实验报告应包括需求分析、详细设计、实现过程和测试结果等内容,用户手册应该详细说明软件的功能和使用方法,技术文档则对系统的架构和实现进行详细说明。

实验通过本次实验,我们深入理解了软件工程的理论和实践,掌握了软件项目的设计与开发流程。

在实践中,我们遇到了各种问题和挑战,但通过团队合作和不断学习,最终成功完成了软件项目的开发。

尽管还有很多不足和改进的地方,但这次实验对我们的软件工程能力提升有着极大的帮助。

参考资料1. 软件工程导论,张海藩,高教出版社2. 软件项目管理实践,曹健,电子工业出版社。

华东交通大学软件工程实验报告

华东交通大学软件工程实验报告

华东交通大学软件学院上机实验报告课程名称:软件工程指导老师:唐怀琴专业班级:12软件+交通设备信息工程2班姓名:徐锦陶学号:20122110120214学期:大二下学期实验一:数据流图实验一、实验目的通过绘制数据流图掌握数据流图的基本原理,并能对简单问题进行数据流图的分析,独立地完成数据流图的分析与设计。

此外,学会使用Case工具完成数据流图和系统流程图的分析与实现。

二、实验内容实验内容如下:a)用visio绘制出如下定货系统的SFD(系统流程图)的模型。

图1 某定货系统SFDb)用visio绘制教材中分别绘制出定货系统的DFD的顶层模型、第一层模型和第二层模型。

(具体参考课本上P69~P70的图3.4,图3.5和图3.6)c)用visio 绘制如下图所示的取款手续的数据流图。

图2 取款手续d)请结合目前的银行柜台取款手续,对图2的取款数据流图进行改进,绘制当前银行柜台取款过程的顶层和第一层数据流图。

三、实验结果(a)、定货系统的SFD(系统流程图)的模型事务库存清单程序订货信息报告生成程序订货报告库存清单主文件(b )、图3.4 DFD 的顶层模型管理员采购员订货系统事务订货报表(b )、图3.5 DFD 的第一层模型处理事务产生报表库存信息订货信息管理员采购员库存清单事务订货信息订货信息订货报表(b )、 DFD 的第二层模型管理员接受事务更新库存信息处理事务产生报表采购员库存清单订货信息事务事务库存信息订货信息订货信息订货报表库存清单(c )、取款手续的数据流图储户付款登录检验日历帐卡存折检验出的问题年月日取款单存折现款付款信息取款信息(d )、当前银行柜台取款过程的顶层数据流图客户客户信息处理账户信息处理结果当前银行柜台取款过程的第一层数据流图客户检查客户帐户余额储户文件登录存折现款取款信息取款信息余额信息实验二、软件设计实验一、实验目的学会使用Case工具完成描述软件结构的软件结构图和软件层次图的设计,并熟练地掌握几种常用的软件详细设计的工具,如程序流程图、盒图、PAD图和判定表,并能把给定的软件问题描述转化为过程设计结果。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

淮海工学院计算机工程学院实验报告书
课程名:《软件工程》
题目:实验3软件测试技术实验
学号:2014140093
班级:Z计121
姓名:薛慧君
实验3软件测试技术实验
实验目的和要求
1、通过本实验,学生应掌握软件测试的基本方法和技术,特别是白盒测试和黑盒测试
技术,以及软件测试对软件质量保证的重要意义。

2、掌握测试用例设计与测试分析方法等。

3、掌握测试过程:含单元测试、集成测试和验收测试。

实验环境
硬件环境:配置性能较好的台式计算机每人1台,并具备网络环境
软件环境:Micresoft Visio,VC++
实验学时
2学时,必做实验
实验题目
1. 选择主要模块:根据相应的程序流程图、盒图或者PAD图,画出相应的流图,计算其环形复杂度;
2、设计驱动程序和存根程序,对该模块进行白盒测试;
3、应用等价类划分、边界值分析法对该模块进行黑盒测试。

实验过程与实验结果
(1)根据伪代码画出相应的程序流程图以及流图:
s
i
a
c
b
e f
g
h
(2)计算其环形复杂度:
经计算,所示流图的环形复杂度为5
(3)白盒测试
判定覆盖测试用例:
①输入数据:A=5,B=5,C=3,D=6 (覆盖siacbfgh)
预期结果:X=10,Y=9
②A=-5,B=2,C=5,D=1(覆盖siadbegh)
预期结果:X=0,Y=4
条件组合覆盖测试用例:
1.共有8种可能出现的条件组合,它们分别是:
(1)A>0,B>0
(2)A>0,B<0
(3)A<0,B>0
(4)A<0,B<0
(5)C>A,D<B
(6)C>A,D>B
(7)C<A,D<B
(8)C<A,D>B
2.下面的4组测试数据可以使上面的8种条件组合每种至少出现一次:
①输入数据:A=5,B=5,C=3,D=6
(针对(1)和(5)两种组合,执行路径siacbegh)
预期结果:X=5,Y=3
②输入数据:A=5,B=5,C=3,D=6
(针对(2)和(5)两种组合,执行路径siadbegh)
预期结果:X=6,Y=1
③输入数据:A=5,B=5,C=3,D=6
(针对(3)和(7)两种组合,执行路径siadbegh)
预期结果:X=-6,Y=-6
④输入数据:A=5,B=5,C=3,D=6
(针对(4)和(8)两种组合,执行路径siadbfgh)
预期结果:X=0,Y=-1
基本路径测试用例:
①由于环形复杂度为5,因此共有5条独立路径,下面列出了5条独立路径:
路径1: 1→2.1→4→5→6.1→7→9→10
路径2: 1→2.1→2.2→4→5→6.1→7→9→10
路径3: 1→2.1→2.2→4→5→6.1→6.2→7→9→10
路径4: 1→2.1→2.2→3→5→6.1→6.2→7→9→10
路径5: 1→2.1→2.2→3→5→6.1→6.2→8→9→10
②设计可强制执行基本集合中每条路径的测试用例
路径1的测试用例:
输入数据:A=-5;B=1;C=-3;D=2
预期结果:X=-6;Y=-5
路径2的测试用例:
输入数据:A=5;B=-4;C=6;D=2
预期结果:X=9;Y=4
路径3的测试用例:
输入数据:A=5;B=-4;C=6;D=4
预期结果:X=9;Y=2
路径4的测试用例:
输入数据:A=9;B=1;C=6;D=4
预期结果:X=6;Y=2
路径5的测试用例:
输入数据:A=5;B=1;C=4;D=4
预期结果:X=6;Y=8
(4)黑盒测试
等价类划分
分析Test2程序,可以划分出如下等价类
(1)有效输入的等价类
①1~20个数字组成的字符串
②1~20个最高位数字左邻是负号的字符串
③1~20个大小写字母组合成的字符串
④1~20个数字以及大小写字母组合成的字符串
⑤1~20个特殊字符组合成的字符串,如:@#等
⑥1~20个数字、大小写字符、特殊字符组合成的字符串(2)无效的输入等价类
①输入的字符超过20
②输入空格
③最高位是空格的字符串
④输入如ESC键、TAB键、SHIFT键
⑤输入最高位是例如ESC键的字符串
⑥最高位数字或字母右面由空格和数字组成
⑦最高位是负号,右面由数字和空格组成
⑧由汉字组成的字符串
根据上面划分的等价类,可以设计出下述测试方案
(1)1~20个数字组成的字符串,输出的是合法的正整数
输入:“123456“
预期的输出:123456
(2)1~20个最高位数字左邻是负号的字符串,输出的是合法的负整数
输入:“-23456“
预期的输出:-23456
(3)1~20个大小写字母组合成的字符串,输出的是合法的负整数
输入:“sdfACDF“
预期的输出:
(4)1~20个数字以及大小写字母组合成的字符串,输出的是合法的正整数
输入:“123adAGF“
预期的输出:
(5)1~20个特殊字符组合成的字符串,如:@#等,输出的是合法的正整数
输入:“@#%^%“
预期的输出:146349
(6)1~20个数字、大小写字符、特殊字符组合成的字符串,输出的是合法的正整数输入:“13@#GB89“
预期的输出:
(7)输入的字符超过20,无效输入
输入:“123fgbh567vfxxs890fcds2456789h“
预期的输出:错误-----程序停止工作
(8)输入空格
输入:““
预期的输出:没有输出
(9)最高位是空格的字符串,输出的是合法的正整数
输入:“ 122“
预期的输出:122
(10)输入如ESC键、TAB键、SHIFT键
输入:“ESC键“
预期的输出:没有输出
(11)输入最高位是例如ESC键的字符串,输出的是合法的正整数
输入:“ESC键123“
预期的输出:123
(12)最高位数字或字母右面由空格和数字组成,输出的是合法的正整数
输入:“12s axd123“
预期的输出:187
(13)最高位是负号,右面由数字和空格组成
输入:“ 12 fr 45“
预期的输出:12
(14)由汉字组成的字符串,输出负整数
输入:“我们“
预期的输出:-108595
边界值分析
(1)使输出等于0
输入:“-“
预期的输出:0
(2)使输出等于空
输入:““
预期的输出:空
(3)使输出等于负整数
输入:“-2345“
预期的输出:-2345
(4)使输入等于正整数
输入:“sdfACDF“
预期的输出:72759122
实验体会
通过实验,我掌握了:
(1)判定覆盖又叫分支覆盖,它的含义是,不仅每个语句必须至少执行一次,而且每个判断的每
种可能的结果都应该至少执行一次,也就是每个判定的每个分支都至少执行一次。

(2)条件组合覆盖是更强的逻辑覆盖标准,它要求选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。

满足条件组合覆盖标准的测试数据,也一定满足判定覆盖、条件覆盖和判定/条件覆盖标准。

因此,条件组合覆盖是前述几种覆盖标准中最强的。

(3)在使用基本路径测试技术设计测试用例时,首先计算程序的环形复杂度,并用该复杂度为指南定义执行路径的基本集合,从该基本集合导出的测试用例可以保证程序中的每条语句至少执行一次,而且每个条件在执行时都将分别取真、假两种值。

(4)黑盒测试着重测试软件功能,黑盒测试力图发现下述类型的错误:①功能不正确或遗漏了功能②界面错误③数据结构错误或外部数据库访问错误④性能错误⑤初始化和终止错误(5)等价划分是一种黑盒测试技术,这种技术把程序的输入域划分成若干个数据类,据此导出测试用例。

一个理想的测试用例能独自发现一类错误。

(6)经验表明,处理边界情况时程序最容易发生错误。

使用边界值分析方法设计测试方案首先应该确定边界情况,这需要经验和创造性,通过输入等价类和输出等价类的边界,就是应该着重测试的程序边界情况。

选取的测试数据应该刚好等于、刚刚小于和刚刚大于边界值。

相关文档
最新文档