监理工作软件监理测试工作参考课件.ppt
《监理工作软件监理测试工作参考课件.ppt》由会员分享,可在线阅读,更多相关《监理工作软件监理测试工作参考课件.ppt(99页珍藏版)》请在三一办公上搜索。
1、北京市质易达工程监理有限责任公司2009年09月,*工程系统工程监理-软件测试工作,1. 软件测试的原则和标准,测试的定义 软件测试是为了发现错误而执行程序的过程,广义上的测试包括代码和文档。 软件测试是根据程序开发阶段的规格说明及程序内部结构而精心设计的一批测试用例(输入数据及其预期结果的集合),并利用这些测试用例去运行程序,以发现错误的过程。测试的目的:验证对象之间的交互; 验证软件的所有构件是否正确集成;确认所有需求是否已经正确实施;确定缺陷并确保在部署软件之前将缺陷解决;尽早尽可能多发现缺陷;提高软件产品的质量。,测试的生命周期,在软件开发生命周期中,软件是通过迭代来不断加以完善的。在
2、这种环境中,对于每个作为测试目标的工作版本,测试的生命周期还都必须具有一种迭代方法。计划:标志测试条件(确定测试什么)和测试的优先级设计:设计测试用例(确定怎么测试)开发:测试开发(设计脚本、数据等)执行:执行测试用例评估:将测试结果与期望结果进行比较,软件测试的原则和标准,软件测试的原则原则一:穷尽测试是不可能的,不充分的测试是愚蠢的,过度的测试也是一种罪孽原则二:测试工作具有创造性,但很困难原则三:测试旨在防止错误的发生原则四:测试是有风险的原则五:测试要有计划性原则六:测试要有独立性(测试部门、小组),测试的局限性,程序测试可以表明缺陷的存在,但决不能证明没有缺陷。测试必须用需求作为参考
3、点。如果需求是错误的或不完全的,就会产生假的测试。基于实现的测试并不能发现遗漏,正如缺少的代码不能被测试一样。从来都不能确信一个正在测试的系统是正确的,测试设计中的错误,可能产生假的测试结果。得到一个预测是困难的,有的甚至是不可能的,常用词汇,错误(Error):Bug缺陷(Fault):是错误的表现失效(failure):当缺陷执行时会发生失效事故(incident):系统在制定范围内执行所需功能时表现的无能测试脚本:一个用过程脚本语言编写的程序,该程序用来执行一个测试包测试包:测试实例的集合测试装置:由测试驱动器和其他支持测试执行的工具组成的系统。测试用例(Test Case):由输入数据
4、和预期结果组成。输入数据:数据、文件或操作序列,预期结果:后果和实际输出,黑盒测试,黑盒测试(Blackbox Testing)又称功能测试、数据驱动测试或基于规格说明的测试,是一种从用户观点出发的测试。被测程序被当作一个黑盒,不考虑程序内部结构和内部特性,测试者只知道该程序输入和输出之间的关系或程序的功能,依靠能够反映这一关系和程序功能的需求规格说明书考虑确定测试用例和推断测试结果的正确性。软件的黑盒测试被用来证实软件功能的正确性和可操作性。,白盒测试,白盒测试(Whitebox Testing)又称结构测试、逻辑驱动测试或基于程序的测试。它依赖于对程序细节的严密检验,针对特定条件设计测试用
5、例,对软件的逻辑路经进行测试。在程序的不同点检验“程序的状态”以判定其实际情况是否和预期的状态相一致。软件的白盒测试用来分析程序的内部结构。,白盒测试要求对某些程序的结构特性做到一定程度的覆盖,或者说是“基于覆盖的测试” 。最为常见的程序结构覆盖有:语句覆盖:它要求被测程序的每一可执行语句在测试中尽可能都检验过,这是最弱的逻辑覆盖准则;分支覆盖或判定覆盖:要求程序中所有判定的分支尽可能得到检验;条件覆盖:当判定式中含有多个条件时,要求每个条件的取值均得到检验;判定条件覆盖:同时考虑条件的组合值及判定结果的检验;路径覆盖:只考虑对程序路径的全面检验。,回归测试,目标: 修改的或增加的部分是正确的
6、 没有引起其他部分产生错误应用:增量开发版本控制软件维护,测试和测试测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。测试是由软件的多个用户在实际使用环境下进行的测试。这些用户返回有关错误信息给开发者。,测试的分类, 静态分析 功能测试 用户界面测试 性能测试 负载测试 强度测试 容量测试 配置测试 安装测试 安全性测试 兼容性测试,测试的标准,GB/T16260-1996信息技术 软件产品评价 质量特性及其使用指南GB/T17544-1998信息技术 软件包 质量要求和测试GB/T8567-1988计算机软件产品开发文件编制指南GB/T9385-1
7、988计算机软件需求说明编制指南GB/T9386-1988计算机软件测试文件编制规范GB/T11457-1995软件工程术语GB/T13502-1992信息处理 程序构造及其表示的约定GB/T14085-1993信息处理系统 计算机系统配置图符号及约定GB/T14394-1993计算机软件可靠性和可维护性管理GB/T15189-1994DOS中文信息处理系统接口规范GB/T15532-1995计算机软件单元测试B/T15535-1995信息处理 单命中判定表规范GB/T1526-1989信息处理 数据流程图、系统流程图、程序网络图和系统资源图的文件编制符号及约定GB/T16680-1996软件
8、文档管理指南GB/T8566-2001信息技术 软件生存期过程,测试相关模型,V 模型(改良),评价,优点文档驱动的开发模型。改良后的模型很注重反馈和测试,其中V模型提出了测试驱动开发的概念。在需求非常明确的前提下可以使用,也适用于有长期专职开发人员的小型项目开发。不足:严格限定了开发的各阶段,缺乏迭代性。缺乏对变化的支持。,原型法Brooks 1975,目的是和用户一起开发并完善一个原型,从最清楚的需求部分开始。,进化原型法,评价,优点:需求驱动的开发模型。帮助理解需求。增强和用户的交流,增加用户好感。不足:缺乏结构化的系统和严谨的开发流程,很难作为一个项目进行管理。,增量型(例RUP),评
9、价,优点:开发过程分解为多个迭代过程,每个过程可以有自己的开发模型。可以快速提交可用的系统,然后根据反馈实施下一个迭代。不足:是一个开发框架,对每个迭代的具体过程缺乏支持:1)如果迭代太少,很容易会蜕变为Code-Fix模式,迭代太多则往往因文档驱动而导致测试和集成的复杂度和费用太大。2)因而无法克服以往开发模型的不足。经常蜕变成Waterfall模型。,XP的增量过程,测试驱动开发,软件开发的测试过程,招投标及合同签订阶段 在合同中应该明确功能测试的基础需求规格说明书,并明确性能测试的方法、其它需测试的类型以及第三方测试等。 在现在的投标书中,有在投标文件中提出验证方法的现象,应引起注意。(
10、P153 8.2) 在监理规划中,应该对软件测试的监理过程方式(旁站、抽查等)进行明确。,开发生命周期中的验证活动,需求阶段监理任务,对测试计划以及测试用例的审核审核主体:测试计划(参阅测试计划审查表)审核注意事项: 时间 人员安排 测试环境:软、硬件、具体地点 测试的依据和标准 测试方法及软件,测试的可行性 执行和维护需求的可行性与可测性 集成、验收测试的进入、结束条件 验收需求对测试设计、用例、规程、经过的跟踪 测试计划的编制需符合GB/T 9386标准,测试用例 审核功能用例是否完全覆盖注意软件性能、安装、配置测试的约定,设计阶段,继续对功能性测试用例进行细化提交接口等测试方法对单元测试
11、的过程、方法进行确认,核实是否已覆盖控制流和数据流提交各模块单元、集成测试方案 算法和逻辑 模块接口 数据结构(全局和局部) 边界条件 独立的路径 错误处理 人员,环境,工具,测试阶段和测试方法,单元测试,目的:分别完成每个单元的测试任务,以确保每个模块能正常工作。单元测试 单元测试在迭代的早期实施,侧重于核实软件的最小可测试元素。单元测试通常应用于实施模型中的构件,核实是否已覆盖控制流和数据流,以及构件是否可以按照预期工作。,单元测试,检验程序最小单位有无错误。一般在编码之后,由开发人员完成。实施效果非常好,但是实施阻力比较大“不可能出问题”“小子,我的代码肯定没错”“天,我这是怎么了,如此
12、简单的错误”“以后绝对不可能了”,单元测试的进入条件,完成单元模块编码代码编译无错误开发单元纳入承建单位配置受控库,单元测试的内容,单元功能测试模块接口测试局部数据结构测试路径测试错误处理测试边界测试重要模块的性能测试,单元测试的成果,单元测试报告测试记录,测试结果分析软件问题报告单,软件修改报告单经修改的代码回归测试记录和结果,单元测试过程,驱动程序:用于模拟主程序的运行桩模块:用于模拟子程序的运行,静态分析 对源代码的静态分析:主要分析代码中的类型、引用、参数传递,以及表达式等不用运行就能够发现的错误;另外还有一些容易出错的地方,如空指针赋值、下标越界等。还可以检查诸如命名规则等编程规范。
13、 此项测试在监理的过程中,一般可以通过代码巡查的过程来保证。,集成测试,又称为组装测试或者联合测试在单元测试的基础上进行将所有模块按概要设计、详细设计的要求进行组装。在进行集成测试时,必须确定关键模块(重要需求,高层控制模块,复杂易错模块,明确性能要求模块),对关键模块及早进行测试。在做回归测试时,也应集中测试关键模块。集成测试的目的:在模块组装后查找模块间接口的错误,为什么进行集成测试?,一个模块可能对另一个模块产生不利的影响 将子功能合成时不一定产生所期望的主功能独立可接受的误差,在组装后可能会超过可接受的误差限度 可能会发现单元测试中未发现的接口方面的错误在单元测试中无法发现时序问题(实
14、时系统)在单元测试中无法发现资源竞争问题,集成测试的方法:,非增式测试:采用一步到位的方法来构造测试:对所有模块进行个别的单元测试后,按程序结构图将各模块联接起来,把联接后的程序当作一个整体进行测试。增式测试:把下一个要测试的模块同已经测试好的模块结合起来进行测试,一次增加一个测试的模块。,自顶向下增式测试,集成步骤:主控模块作为测试驱动,所有与主控模块直接相连的模块作为桩模块;根据集成的方式(深度或广度),每次用一个替换从属的桩模块;在每个模块被集成时,都必须已经进行了单元测试;进行回归测试以确定集成新模块后没有引入错误上述过程从第2步重复进行,直到整个系统结构被集成完成。,自底向上增式测试



- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 监理 工作 软件 测试 参考 课件

链接地址:https://www.31ppt.com/p-1594865.html