1 / 106
文档名称:

软件检验与软件测试.ppt

格式:ppt   大小:1,098KB   页数:106页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

软件检验与软件测试.ppt

上传人:sxlw1984 2020/5/5 文件大小:1.07 MB

下载得到文件列表

软件检验与软件测试.ppt

文档介绍

文档介绍:第9章软件检验与软件测试 (教材第19章、20章)有关概念V&(VerificationandValidation,V&V,也有人称为验证与确认)是整个软件生命周期中对各阶段(需求评审、设计评审、代码检查、产品测试)过程活动的结果检查和分析的过程,以确保软件既能符合定义中的要求,又能满足客户或用户的要求。Boehm给出了二者之间的不同:•检验:是否正确地建立一个产品?•有效性验证:是否建立了一个正确的产品?检验(验证)的作用是检查软件是否符合它的描述中所定义的功能和非功能的需求。而有效性验证(确认)要说明软件是否最终满足用户的要求。如需求中的一些错误和遗漏可能在系统完全实现后才能发现。2在V&V过程中有两个系统检验和分析技术:•软件检查检查各种文档,静态检验技术。•软件测试动态检验技术,实现运行检验。下图给出了两个技术活动在软件过程中的位置:软件检查需求描述高层设计形式化描述详细设计软件实现原型软件测试静态、动态检验和有效性验证箭头指示的是该项技术活动在那个阶段使用3验证技术包括程序检查、自动化源代码分析和形式化检验。但静态技术只能检查程序及其描述之间的吻合程度(检验),不能够说明软件真的是有用的,也不能检验软件的非功能特性。只有通过测试才能验证系统的有效性。测试和调试是两个不同的过程:•测试是一个发现软件缺陷(Defect)的过程。•调试是一个对缺陷定位和修改的过程。如图所示:&V规划该过程的规划应该在开发过程的早期开始。下图说明了测试计划如何从系统描述和设计中导出。有时也称之为V模型。需求描述实现系统设计详细设计单元测试子系统集成测试系统集成测试验收测试验收测试计划系统集成测试计划子系统集成测试计划单元测试计划5对测试的规划主要是制定测试过程标准。主要组成部分见下表:,成本是昂贵的。软件检查在程序完成之前就应进行。检查的对象是可以是系统模型、系统描述或源代码。要充分利用开发系统的知识和源表示形式的语义来发现错误。软件检查是一种有效的错误检测技术,能够在初始阶段发现绝大多数错误,有专家报告说明超过60%的程序错误是通过检查发现的。软件检查不仅包括程序检查,还包括对软件过程中生成的所有文档的的检查。由安博测试空间技术中心程序检查程序检查的目标是发现缺陷。缺陷可能是逻辑错误、错误的条件、或是与机构和项目标准不相符的问题。程序检查的过程是一个正式的过程,应该由4个人以上的小组来实行。教材P295列出了检查过程中的角色。下图列出了一般的程序检查过程:规划概览个人准备会议讨论修改缺陷后续行动检查过程仲裁者决定是否反复,最后要对审查清单签署意见8检查过程应该有一个程序员常出错误的核对清单,团队有经验的人员经过讨论建立该清单,并随着经验的积累丰富这个清单。不同的程序语言由于编译器提供的检查层次不同应该有不同的清单。教材P296列出了要检查的项目(数据、控制、I/O、接口、存储管理、异常管理等方面的缺陷)。专家建议检查过程不要超过两小时,否则缺陷检查的效率会大大降低。因此在程序开发过程中应该经常进行检查,每次选择一个相对较小的组件。管理者一定要将程序检查和人事评价严格分开,检查结果暴露的错误不能作为程序员事业评估的依据。要建立起一种鼓励发现错误、不会因为这些错误引来指责的良好的企业文化。(如Unix系统中用于C语言的Lint)。扫描源代码,通过解析程序文本识别缺陷。如:有不可到达的代码段、未初始化的变量或指针、未说明或使用的变量、可能的数组越界、参数类型或个数不匹配等。静态分析包括以下几个阶段:•控制流分析找出并显示有多重出口或入口的循环以及不可到达的代码段(如无条件转移语句包围的一段代码;条件语句中不可能到达的条件)。•数据使用分析突出显示变量的使用情况。也发现那些判定值从不发生改变的条件。10