




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章模块(单元)测试,5.1测试用例设计5.2增量测试5.3自顶向下测试与自底向上测试5.4执行测试,第5章模块(单元)测试,模块测试的元素对程序中较小构成元素(面向过程)单个子程序或过程/(面向对象)类或方法(通常为类)进行测试。模块测试的动机模块测试减轻了调试的难度,因为错误一旦发现,就知道它在哪个具体的模块中。模块测试提供了同时测试多个模块的可能性,这将并行工程引入了软件测试之中。模块测试的目的将模块的功能与定义模块的功能规格说明或接口规格说明进行比较,揭示出模块与其规格说明之间存在的矛盾。,模块接口:检查进出单元的数据流是否正确?局部数据结构:测试内部数据是否完整?例如:不正确的类型说明,错误的初始化等。路径测试:发现由于不正确的判定或不正常的控制流而产生的错误,例如:不正确的逻辑操作或优先级,不适当地修改循环变量。边界条件:测试边界处程序是否正确工作?出错处理:测试出错处理措施是否有效?例如:提供的错误信息不足,难以找到错误原因等。,第5章模块(单元)测试针对的问题,5.1测试用例设计,需要的信息模块的规格说明:模块的输入和输出以及模块的功能。模块的源代码。测试用例的设计方法模块测试总体上是面向白盒测试的(静态、动态)后续测试针对较大的元素不易进行白盒测试。后续测试着眼于发现其他类型的错误,不一定与程序逻辑结构有关。使用一种或多种白盒测试方法分析模块的逻辑结构,然后使用黑盒测试方法对照模块的规格说明补充测试用例。举例P71-80,5.1测试用例设计得出的结论,使用白盒测试方法前,需要列举出程序中所有的条件判断;使用白盒测试方法时,应在开始就使用多重条件覆盖的方法;使用黑盒测试方法时,最好要使用边界值分析的方法,且不要依据边界值分析的结果来重写白盒测试的测试用例;黑盒测试的用例最好再单独写出来进行补充,不改动前边已经确认过的白盒测试的测试用例。,5.2增量测试,测试单独的模块可能需要一个特殊的驱动模块和一个或多个桩模块。驱动模块是为测试编写的一个小模块,用来将测试用例驱动或传输数据到被测模块。驱动模块还需要向测试人员显示被测模块的结果。桩模块充当被测模块调用的模块,模拟该模块的功能,接受被测模块的调用指令。例如测试模块B时需要一个驱动模块,和一个模拟模块E的桩模块。,5.2增量测试,模块测试除了要考虑如何设计一个有效的测试用例集之外,还有就是将模块组装成工作程序的方式。两类测试方法非增量测试:先独立地测试每个模块,然后再将所有这些模块组装成完整的程序测试,又称为崩溃(big-bang)测试。增量测试:将被测模块组装到测试完成的模块集合中,然后再进行测试。注:在进行增量模块测试时,模块测试和集成是同步进行的,集成测试就是模块测试的隐含部分,往往并不作为一个独立的测试步骤。,5.2增量测试增量测试和非增量测试的区别,5.3自顶向下测试与自底向上测试,5.3.1自顶向下的测试从程序的顶部或初始模块开始测试。选择后续模块进行增量测试的原则是:至少一个调用该模块的模块事先经过了测试。有多种可能的测试序列时,应该考虑先测试关键模块和I/O模块。为了测试上层模块,需要设计桩模块,桩模块通常要向被测模块提供测试数据,如读取外部数据文件。,5.3.1自顶向下的测试例子,图中共有12个模块A到L模块I包含IO的写操作模块J包含IO的读操作,5.3.1自顶向下的测试自顶向下的增量测试,首先测试模块A,需要设计代表模块B,C,D的桩模块;如图接着用实际模块代替桩模块,如B,并添加B的桩模块;如图增量的序列有多种可能,例如:ABFJDICGEKHL,加入I后,如图,5.3.1自顶向下的测试自顶向下增量测试中的桩模块,显示跟踪信息,显示传递信息,返回一个值,根据输入返回一个值,5.3.2自底向上的测试,从不调用其他模块的终端模块开始测试,选择下一个模块进行增量测试的原则是:该模块调用的所有的模块都已经事先经过了测试。为了测试低层模块,需要为它们设计驱动模块:即包含着有效的测试输入、调用被测模块且显示输出的模块。,5.3.2自底向上的测试自底向上的增量测试,第一步是测试E,J,G,K,L和I中的部分或全部模块,既可以串行也可以并行进行;需要设计驱动模块,有的驱动模块可以供几个测试模块使用接着测试的模块序列有多种可能,如果接下来是测试较关键的模块F,H,则用它们代替相应的驱动模块,并加入它们的驱动模块,如图,5.3.2自底向上的测试自底向上增量测试中的驱动模块,调用从属模块,调用从属模块,并传递参数,调用从属模块,并要求得到参数,兼有B,C的功能,5.3.3自顶向下测试和自底向上测试的比较,5.4执行测试,审核测试用例当测试用例造成模块输出的实际结果与预期结果不匹配的情况时,存在两种可能:该模块存在错误,或者测试用例不正确。因此,执行测试前应审核测试用例集。使用自动化测试工具可以减少测试过程中的劳动,如流程分析工具等。执行测试时,应该查找程序的副作用,即模块是否执行了不该执行的操作。程序员不应测试自己编写的模块,最好交换测试;编写调用模块的程序员是测试被调模块的最佳人选。模块测试的目的不是证明模块能够正确地运行,而是证明模块中存在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖北恩施州巴东县绿葱坡镇人民政府公益性岗位招聘4人考前自测高频考点模拟试题及答案详解(必刷)
- 2025年长春中医药大学附属医院二道医院(院区)招聘(1号)(含专项招聘高校毕业生)(220人)考前自测高频考点模拟试题及答案详解(网校专用)
- 2025年甘肃武威古浪县八步沙林场招聘财会、水利专业人员考前自测高频考点模拟试题含答案详解
- 2025黑龙江哈尔滨宾县公安局招聘警务辅助人员32人考前自测高频考点模拟试题及一套参考答案详解
- 2025年4月广东广州市天河区珠江新城猎德幼儿园编外教辅人员招聘2人模拟试卷附答案详解(考试直接用)
- 2025昆明市官渡区北京八十学校招聘(18人)模拟试卷及答案详解一套
- 2025宝鸡市某医院招聘药学专技人员(3人)考前自测高频考点模拟试题附答案详解(模拟题)
- 2025年河北沧州任丘园区产业发展集团有限公司招聘工作人员10名考前自测高频考点模拟试题及答案详解(考点梳理)
- 2025福建厦门启航培训服务有限公司招聘1人考前自测高频考点模拟试题及答案详解(网校专用)
- 2025内蒙古自治区阿尔山市属国有企业外部董事拟进入人员模拟试卷有答案详解
- 2025年云南交投集团校园招聘管理人员86人笔试参考题库附带答案详解
- 2025年小学语文一年级第一学期期中测试试卷
- 2025年6月上海市高考语文试题卷(含答案)
- 码头突发事件培训
- 2024年湖南省龙山县卫生系统招聘考试(护理学专业知识)题含答案
- 热点地区物种多样性保护-洞察及研究
- 2025菏投热电(巨野)有限公司面向市属企业(内部)选聘运维人员60人笔试参考题库附带答案详解(10套)
- 黑龙江介绍课件
- 2025至2030中国汽车A柱行业项目调研及市场前景预测评估报告
- 2026年高考英语专题复习:必背近10高考英语高频词汇表
- 呼吸心跳骤停病人的护理查房
评论
0/150
提交评论