您现在的位置:首页 > 教案怎么写 > 正文

单元测试 软件开发技术项目实践课件知识介绍.ppt

2019-11-03 07:03 网络整理 教案网

软件开发单元测试_ftp的客户端软件和服务器端软件如何自己开发_声学包开发-材料篇&测试

学习情境四 :《网络考试系统》系统测试 工作任务:单元测试 ASP.NET软件开发技术项目实践任务描述 掌握软件测试的相关知识 任务目标 知识目标 能力目标单元测试又称模块测试,是针对软件设计的最小单位——程序模块,进行正确性检验的测试工作。它的目的在于发现模块内部可能存在的各种差错。 掌握对功能模块进行单元测试的方法 相关知识1.软件测试 (1)什么是软件测试软件测试是为了发现错误而执行程序的过程;或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。软件测试在软件生存期中横跨两个阶段,通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。模块的编写者与测试者是同一个人,编码与单元测试属于软件生存期中的同一个阶段。在这个阶段结束之后,对软件系统还要进行各种综合测试,这是软件生存期的另一个独立的阶段,即测试阶段,通常由专门的测试人员承担这项工作。 相关知识 (2)软件测试的目的和原则 设计测试的目的是想以最少的时间和人力系统地找出软件中潜在的各种错误和缺陷。

软件开发单元测试_声学包开发-材料篇&测试_ftp的客户端软件和服务器端软件如何自己开发

如果成功地实施了测试,就能够发现软件中的错误。测试的附带收获是,它能够证明软件的功能和性能与需求说明相符合。此外,实施测试收集到的测试结果数据为可靠性分析提供了依据。 测试不能表明软件中不存在错误,它只能说明软件中存在错误。 相关知识 软件测试的原则如下: 应当把“尽早地和不断地进行软件测试”作为软件开发者的座右铭。不应把软件测试仅看作是软件开发的一个独立阶段,而应当把它贯穿到软件开发的各个阶段中。坚持在软件开发的各个阶段进行技术评审,这样才能在开发过程中尽早发现和预防错误,把出现的错误克服在早期,杜绝发生某些错误的隐患。 测试用例应由测试输入数据和与之对应的预期输出结果两部分组成。测试以前应当根据测试的要求选择测试用例(Test case),用来检验程序员编制的程序,因此不但需要测试的输入数据,而且需要针对这些输入数据的预期输出结果。 相关知识 2.软件测试的过程与策略 测试过程按4个步骤进行,即单元测试、集成测试、确认测试和系统测试。如图4-1所示为软件测试经历的4个步骤。单元测试集中对用源代码实现的每一个程序单元进行测试,检查各个程序模块是否正确地实现了规定的功能。然后进行集成测试,根据设计规定的软件体系结构,把已测试过的模块组装起来,在组装过程中,检查程序结构组装的正确性。

ftp的客户端软件和服务器端软件如何自己开发_软件开发单元测试_声学包开发-材料篇&测试

确认测试则是要检查已实现的软件是否满足需求规格说明中确定的各种需求,以及软件配置是否完全、正确。最后是系统测试,是把已经经过确认的软件纳入实际运行环境中,与其他系统成分组合在一起进行测试。严格地说,系统测试已超出了软件工程的范围。 相关知识 图4-1 软件测试的过程 相关知识 3.单元测试 1)单元测试的概念 单元测试是在软件开发过程中要进行的最低级别的测试活动,在单元测试活动中,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。单元测试作为无错编码的一种辅助手段在一次性的开发过程中使用,它必须是可重复的,无论是在软件修改或移 植到新的运行环境的过程中。因此,所有的测试都必须在整个软件系统的生命周期中进行维护。 单元测试是由程序员自己来完成,最终受益的也是程序员自己。可以这么说,程序员有责任编写功能代码,同样也就有责任为自己的代码编写单元测试。执行单元测试,就是为了证明这段代码的行为和我们期望的一致。 相关知识 2)单元测试的内容 单元测试一般按如图4-2所示的5个方面进行。 图4-2 单元测试的内容 相关知识 (1)模块接口测试 如果数据不能按预定要求进出模块,所有其他测试都是不切实际的。

ftp的客户端软件和服务器端软件如何自己开发_软件开发单元测试_声学包开发-材料篇&测试

接口测试主要从如下几个方面考虑: 模块的形参和其驱动模块送来的参数的个数、类型、次序是否一致。 模块传送给被调用模块的参数与其桩模块的参数的个数、类型和次序是否一致。 模块传送给库函数的变量个数、类型次序是否正确。 全局变量的定义和用法在各个模块中是否一致。 相关知识 (2)局部数据结构测试 模块内部数据是否完整,内容、形式、相互关系是否有错常常是软件的主要错误来源。应做如下考虑: 错误或不相容的数据说明或使用了尚未初始化的变量。 错误的初始值或不正确的默认值。 错误的变量名或数据类型不相容。 溢出(上溢或下溢)或地址异常。 全局数据对模块的影响。 相关知识 (3)重要路径测试 重要路径测试重点测试由于错误计算、不正确的比较或不适当的控制流而造成的错误。常见错误如下: 运算的次序错误(没有考虑清楚运算符的优先级)。 混合运算对象的类型彼此不相容,也就是数据类型不匹配。 变量初始值错误。 数据精度不够软件开发单元测试,或由于精度问题,两个量不可能相等时,程序中却期待着相等条件的出现。 相关知识 错误地修改循环变量,错误的或不可能达到的循环终止条件。 循环语句循环次数与预期的不符合(多循环1次或少循环1次)。

软件开发单元测试_ftp的客户端软件和服务器端软件如何自己开发_声学包开发-材料篇&测试

当遇到发散的循环迭代时循环不能终止。 所使用的外部文件的属性是否正确,打开文件的语句是否正确,缓冲区大小是否与记录长度相匹配,文件结束判断处理是否一致。 相关知识 (5)边界值测试 边界值测试是单元测试中最后的、也是最重要的工作,因为程序往往会在边界值上出现一些莫名奇妙的错误。例如软件开发单元测试,一个for循环语句中有一个n次循环,当程序运行到第n次循环时就有可能出现错误。 要特别注意数据流、控制流中恰好等于、大于或小于确定的比较值时出错的可能性。要精心设计测试用例对这些地方进行测试。 相关知识4.测试用例设计软件测试的种类大致可以分为人工测试和基于计算机的测试,而基于计算机的测试又可以分为黑盒测试和白盒测试。 (1)黑盒测试根据软件产品的功能设计规格在计算机上进行测试,以证实每个实现了的功能是否符合要求,这种测试方法就是黑盒测试。黑盒测试意味着测试要在软件的接口处进行。也就是说,这种方法是把测试对象看作一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求分析规格说明,检查程序的功能是否符合它的功能说明。用黑盒测试发现程序中的错误,必须在所有可能的输入条件和输出条件中确定测试数据,来检查程序是否都能产生正确的输出。