软件测试单元测试和集成测试.ppt

(31页)

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

19.90 积分

*内容(1)单元测试驱动程序桩程序互动(2)集成测试 自顶向下自底向上混合策略三明治方法*单元测试 什么是单元测试?单元测试就是对已实现的软件最小单元进行测试,以保证构成软件系统的各个单元的质量 单元测试活动中,强调被测试对象的独立性单元测试应从各个层次来对单元内部算法、外部功能实现等进行检验,包括对程序代码的评审和通过运行单元程序来验证其功能特性等内容。 *单元测试单元实现了其特定的功能,如果需要,返回正确的值单元的运行能够覆盖预先设定的各种逻辑在单元工作过程中,其内部数据能够保持完整性,包括全局变量的处理、内部数据的形式、内容及相互关系等不发生错误可以接受正确数据,也能处理非法数据,在数据边界条件上,单元也能够正确工作该单元的算法合理,性能良好该单元代码经过扫描,没有发现任何安全性问题*单元测试 单元测试的方法单元测试主要采用白盒测试方法,辅以黑盒测试方法。白盒测试方法应用于代码评审、单元程序检验之中,而黑盒测试方法则应用于模块、组件等大单元的功能测试之中 *单元测试黑盒测试方法(Blake-box Testing),是把程序看作一个不能打开的黑盒子,不考虑程序内部结构和内部特性,而是考察数据的输入、条件限制和数据输出,完成测试 白盒测试方法(White-box Testing),也称结构测试或逻辑驱动测试。白盒测试方法是根据模块内部结构了解,基于内部逻辑结构,针对程序语句、路径、变量状态等来进行测试,检验程序中的各个分支条件是否得到满足、每条执行路径是否按预定要求正确的工作。 黑盒测试 和 白盒测试*单元测试驱动程序(driver),对底层或子层模块进行(单元或集成)测试时所编制的调用被测模块的程序,用以模拟被测模块的上级模块 桩程序(stub),也有人称为存根程序,对顶层或上层模块进行测试时,所编制的替代下层模块的程序,用以模拟被测模块工作过程中所调用的模块。 *单元测试ABCDEFGTest驱动程序调用运行桩程序桩程序测试结果被测模块B*单元测试 桩单元int stub_add(int a,int b) {      if((a==1)&&(b==1))            return 2;      if((a==2)&&(b==-1))            return 1;      if((a==3)&&(b==0))            return 3;      if((a==4)&&(b==1))           return  5;      .............     }解释这段代码含义 volunteer ??*单元测试 驱动单元解释这段代码含义 volunteer ??void driver(X,Y,Z) {        int sum=0;      sum=add(X,Y);      if(Z==sum)         printf("test case CAL_ST_SRS001_001 OK!\n");      else         printf("test case CAL_ST_SRS001_001 fail!\n); } *单元测试 驱动程序 和 桩程序 示意图volunteer ??ABCDEFGTest*单元测试 驱动程序 和 桩程序 示意图volunteer ??ABCDEFGTest*集成测试 非渐增式模式  采用大棒集成方法,先是对每一个子模块进行测试(单元测试阶段),然后将所有模块一次性的全部集成起来进行集成测试 。  因为所有的模块一次集成的,所以很难确定出错的真正位置、所在的模块、错误的原因。这种方法并不推荐在任何系统中使用,适合在规模较小的应用系统中使用。 *集成测试 非渐增式模式*集成测试渐增式集成模式与非渐增式集成模式 非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要的程序,如大棒模式。渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完以后再把下一个应该测试的模块结合进来测试。*集成测试 自顶向下*集成测试 非渐增式模式 AS3S4S5d2 Cd4 Ed5 Fd1 B s1d3 s2 DABCDEFABCDEF(1)程序结构图(2)单元测试示意图*集成测试 自顶向下:深度优先ABCDEFvolunteer ??*集成测试 自顶向下:深度优先*集成测试 自顶向下:宽度优先ABCDEFvolunteer ??*集成测试 自顶向下:宽度优先*集成测试 自底向上*集成测试 自底向上 A B C D E Fvolunteer ??*集成测试 自底向上 A B C D E F d2 Cd1 Ed3 Fd4 B Ed5 F D A B C D E F*集成测试 混合策略混合法:对软件结构中较上层,使用的是“自顶向下”法;对软件结构中较下层,使用的是“自底向上”法,两者相结合 *集成测试 三明治方法  采用三明治方法的优点是:它将自顶向下和自底向上的集成方法有机地结合起来,不需要写桩程序因为在测试初自底向上集成已经验证了底层模块的正确性。采用这种方法的主要缺点是:在真正集成之前每一个独立的模块没有完全测试过。*集成测试 三明治方法 A B C D E Fvolunteer ??*集成测试 三明治方法*集成测试 改进的三明治方法  改进的三明治集成方法,不仅自两头向中间集成,而且保证每个模块得到单独的测试,使测试进行得比较彻底 。*集成测试 改进的三明治方法 A B C D E Fvolunteer ??*集成测试 改进的三明治方法*END 关 键 词: 测试 软件 集成

 天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

软件测试集成测试ppt,软件测试单元测试和集成测试.ppt相关推荐

  1. 软件测试面试题:单元测试、集成测试、系统测试的侧重点是什么?

    单元测试.集成测试.系统测试的侧重点是什么?  单元测试针对的是软件设计的最小单元--程序模块(面向过程中是函数.过程:面向对象中是类.),进行正确性检验的测试工作,在于发现每个程序模块内部可能存在的 ...

  2. 单元测试,集成测试,系统测试,确认测试的区别

    从系统上来说,软件测试的方法主要包括单元测试,集成测试,系统测试,确认测试.(重点说单元测试和集成测试) 单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的.很明确的功能是否正 ...

  3. 单元测试与集成测试、系统测试、测试过程管理、软件测试自动化的综合练习

    1.关于单元测试,下列说法正确的是(D) A单元测试只能使用白盒测试技术设计测试用例 B所有黑盒测试技术均适用于单元测试用例设计 C如果被测模块调用的硬件驱动模块未就绪,可以编写测试模块来替代这部分硬 ...

  4. 软件测试基础知识 - 单元测试、集成测试、系统测试、回归测试、验收测试这几步中最重要的是哪一步

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net 这些测试步骤分别在软件开发的不同阶段对软件进行测试, ...

  5. 软件测试技术课后习题:第6章单元测试与集成测试-广东高等教育出版社,主编杨胜利

    目录 1.什么是单元测试? 2.什么是集成测试? 3.简述单元测试与集成测试的区别. 4.什么是静态测试? 5.什么是动态测试?简述动态测试的步骤. 6.简述驱动模块和桩模块在实际中的应用以及设计原则 ...

  6. 软件测试证述职报告ppt,实验室检测员的述职报告ppt

    010在线为您甄选多篇描写实验室检测员的述职报告ppt,实验室检测员的述职报告ppt精选,实验室检测员的述职报告ppt大全,有议论,叙事 ,想象等形式.文章字数有400字.600字.800字....缓 ...

  7. Spring Boot 的单元测试和集成测试

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 作者 | 万想 来源 | 公众号「锅外的大佬」 学习如何使用本教程中提供的工具,并在 Spr ...

  8. 软件测试简介教程:单元测试、黑盒测试、白盒测试

    单元测试背后的原因通常,软件属于四级测试:单元测试,集成测试,系统测试和验收测试,但有时由于时间消耗,软件测试人员进行的单元测试最少,但单元测试的跳过可能会导致集成测试,系统测试期间出现更高的缺陷 , ...

  9. 软件测试过程与方法(1):单元测试,集成测试,确认测试

    软件测试过程 软件测试从测试计划编写到测试实施,需要经过一系列的过程.这些测试按软件从编写到交付的各个阶段的先后顺序可分为以下5个阶段: 单元测试 集成测试 确认(有效性)测试 系统测试 验收(用户) ...

最新文章

  1. CCF青年精英大会(YEF2021)即将召开
  2. nginx配合modsecurity实现WAF功能
  3. GAN——UNIT简单梳理
  4. ngx_rtmp_shared模块对ngx_chain_t的操作总结
  5. 圳不完全启示录之初来乍到----2
  6. 一个 redis 异常访问引发 oom 的案例分析
  7. 《神经网络和深度学习》系列文章五:用简单的网络结构解决手写数字识别
  8. python绘制小猪佩奇
  9. webpack项目使用eslint建立代码规范
  10. 百度之星1000——A+B问题
  11. 用Python剪辑视频?太简单了
  12. 零基础学SQL(三、MYSQL环境变量配置及启动)
  13. D触发器的工作原理以及Verilog代码(一/二)
  14. Java实现图片转pdf、pdf合并
  15. edge通常不会下载xxxx确保信任xxx怎么解决
  16. 获取网易云音乐播放链接
  17. ArcGIS快速分别导出大量范围线的坐标到报盘Excel格式
  18. Java学生信息管理系统——管理员登录模块(简单易上手)
  19. 高级搜索:搜索指定网址
  20. python海龟绘图,简单的坐标系问题

热门文章

  1. 使命召唤10:幽灵中文版分享
  2. RaspberryPi+OneNET MQTT方式 数据上传和命令下发
  3. 机器学习-搭建环境-1:Win10安装Anaconda和Jupyter Notebook
  4. 不积硅步,无以至千里
  5. unicode编码范围:
  6. 论文参考文献类型代码及书写格式
  7. 康宁杰瑞、君实生物、天境生物人事任命;赛诺菲诺维乐在中国上市新适应证 | 医药健闻...
  8. Kerberos协议认证
  9. 毫米波频段射频器件的主要技术工艺趋势
  10. 使用jquery.fly插件实现添加购物车抛物动画