第6讲 集成测试-系统测试_第1页
第6讲 集成测试-系统测试_第2页
第6讲 集成测试-系统测试_第3页
第6讲 集成测试-系统测试_第4页
第6讲 集成测试-系统测试_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、集成测试集成测试基于分解的集成基于分解的集成基于调用图的集成基于调用图的集成基于路径的集成基于路径的集成案例案例集成测试集成测试基于分解的集成基于分解的集成基于调用图的集成基于调用图的集成基于路径的集成基于路径的集成案例案例基于分解的集成基于分解的集成目标是测试通过单元测试的单元接口目标是测试通过单元测试的单元接口u4 4种基本策略种基本策略自顶向下自顶向下自底向上自底向上三明治三明治大爆炸大爆炸基于分解的集成基于分解的集成u自顶向下集成自顶向下集成从主程序开始从主程序开始下层模块作为下层模块作为“桩桩”模块模块桩(桩(stubstub):):也称存根,模拟被测模块所调用的模块也称存根,模拟被

2、测模块所调用的模块u示例示例Procedure GetPINforPAN (PAN, ExpectedPIN)If PAN = 1123 Then PIN :=8876If PAN = 1234 Then PIN :=8765If PAN = 8746 Then PIN :=1253EndProcedure KeySensor (KeyHit)Data: KeyStrokes STACK OF 8.8.7.cancelKeyHit = POP(KeyStrokes)End基于分解的集成基于分解的集成基于分解的集成基于分解的集成u自底向上集成自底向上集成u从叶节点模块开始从叶节点模块开始u上层模

3、块作为上层模块作为“驱动模块驱动模块”驱动(驱动(DriverDriver)模拟被测模块的上级模块模拟被测模块的上级模块接受测试数据,把相关数据传送给被测模块接受测试数据,把相关数据传送给被测模块启动被测模块启动被测模块基于分解的集成基于分解的集成基于分解的集成基于分解的集成u三明治集成三明治集成自顶向下和自底向上集成的组合自顶向下和自底向上集成的组合桩和驱动器的开发工作较少桩和驱动器的开发工作较少基于分解的集成基于分解的集成u大爆炸集成大爆炸集成将所有单元放到一起编译并进行一次性测试将所有单元放到一起编译并进行一次性测试当发现失效或者错误时,很难确定缺陷的位置当发现失效或者错误时,很难确定缺

4、陷的位置集成测试集成测试基于分解的集成基于分解的集成基于调用图的集成基于调用图的集成基于路径的集成基于路径的集成案例案例基于调用图的集成基于调用图的集成以调用图为基础以调用图为基础u2 2种基本策略种基本策略成对集成成对集成相邻集成相邻集成基于调用图的集成基于调用图的集成成对集成成对集成调用图的每条边对应一次集成,降低桩调用图的每条边对应一次集成,降低桩/ /驱驱动器的开发量动器的开发量基于调用图的集成基于调用图的集成相邻集成相邻集成以节点的以节点的邻居(直接前驱和所有直接后继)邻居(直接前驱和所有直接后继)为基础进行集成为基础进行集成集成测试集成测试基于分解的集成基于分解的集成基于调用图的集

5、成基于调用图的集成基于路径的集成基于路径的集成案例案例u集成测试的修订目标集成测试的修订目标l 不仅测试单元间的接口,而且测试单元间的交互不仅测试单元间的接口,而且测试单元间的交互l 接口是结构性的,而交互是行为性的接口是结构性的,而交互是行为性的u基于基于MM-路径的集成方法路径的集成方法l 由由Paul C. Jorgensen提出提出l MM-路径:路径:模块执行路径与消息的交互序列模块执行路径与消息的交互序列基于路径的集成基于路径的集成基于路径的集成基于路径的集成u源节点源节点单元中的第一个可执行语句单元中的第一个可执行语句紧接着转移控制到其它单元节点之后的节点紧接着转移控制到其它单元

6、节点之后的节点 源节点源节点A:1, 5B:1, 3C:1基于路径的集成基于路径的集成源节点源节点A:1, 5B:1, 3C:1u汇节点汇节点单元中的最后一个可执行语句单元中的最后一个可执行语句转移控制到其它单元的节点转移控制到其它单元的节点汇节点汇节点A:4, 6B:2, 4C:5基于路径的集成基于路径的集成源节点源节点A:1, 5B:1, 3C:1汇节点汇节点A:4, 6B:2, 4C:5u执行路径执行路径以源节点开始,以汇节点结束的一系列语句以源节点开始,以汇节点结束的一系列语句中间没有插入汇节点中间没有插入汇节点执行路径执行路径MEP(A, 1): MEP(A, 2) : MEP(A,

7、 3): MEP(B, 1) : MEP(B, 2): MEP(C, 1): MEP(C, 2): 基于路径的集成基于路径的集成MM- -路径路径一种有向图,节点表示模块的执行路径,边表一种有向图,节点表示模块的执行路径,边表示消息或模块间的返回示消息或模块间的返回2022-3-7上海大学计算机学院19基于路径的集成基于路径的集成2022-3-7上海大学计算机学院20MEP(A, 2)MEP(B, 1)MEP(C, 1)MEP(B, 2)MEP(A, 3)MEP(C, 2)MEP(A, 1)执行路径执行路径MEP(A, 1): MEP(A, 2) : MEP(A, 3): MEP(B, 1)

8、: MEP(B, 2): MEP(C, 1): MEP(C, 2): 系统测试系统测试2022-3-7上海大学计算机学院21系统测试系统测试基本概念基本概念线索线索寻找线索寻找线索线索测试策略线索测试策略示例:示例:SATM2022-3-7上海大学计算机学院22基本概念基本概念传统的集成传统的集成注重测试接口连接注重测试接口连接原理性的,依赖特定程序结构原理性的,依赖特定程序结构端到端端到端(End to End, E2E)集成集成从最终用户角度,对系统进行功能测试从最终用户角度,对系统进行功能测试假设单元测试和集成测试已完成假设单元测试和集成测试已完成独立于开发过程和特定程序结构独立于开发过

9、程和特定程序结构系统测试系统测试基本概念基本概念线索线索寻找线索寻找线索线索测试策略线索测试策略SATM2022-3-7上海大学计算机学院24线索线索u常用的一些定义常用的一些定义使用场景使用场景一个系统级的测试用例一个系统级的测试用例端口输入和输出的交替序列端口输入和输出的交替序列系统状态机中的一个迁移序列系统状态机中的一个迁移序列对象消息和方法执行的交替序列对象消息和方法执行的交替序列原子系统功能原子系统功能(Atomic System Function, ASF)(Atomic System Function, ASF)序列序列线索线索l原子系统功能原子系统功能( (ASF) )l系统层

10、通过端口输入和输出事件可观察的动作,由系统层通过端口输入和输出事件可观察的动作,由事件静止点隔离事件静止点隔离l由端口输入事件发起、遍历一些程序实现逻辑、以由端口输入事件发起、遍历一些程序实现逻辑、以一个端口输出事件结束一个端口输出事件结束线索线索ASF图图l一种有向图,节点表示一种有向图,节点表示ASFASF,边表示从,边表示从ASFASF到到ASFASF的的串行流。源节点为入口串行流。源节点为入口ASFASF,汇节点为退出节点,汇节点为退出节点l如:如:“卡输入卡输入”为源节点,为源节点,“会话结束会话结束”为汇节点为汇节点系统线索系统线索ASFASF图中一条从源节点到汇节点的路径图中一条

11、从源节点到汇节点的路径系统线索图系统线索图一种有向图,节点为系统线索,边为线索的顺序执行一种有向图,节点为系统线索,边为线索的顺序执行系统测试系统测试基本概念基本概念线索线索寻找线索寻找线索线索测试策略线索测试策略SATM2022-3-7上海大学计算机学院28寻找线索寻找线索行为模型行为模型合适的模型合适的模型不能太弱,以致没有表达重要行为不能太弱,以致没有表达重要行为不能太强,以致掩盖感兴趣的行为不能太强,以致掩盖感兴趣的行为有穷状态机(有穷状态机(FSM)Petri网网并发系统并发系统可用于分析线索交互可用于分析线索交互2022-3-7上海大学计算机学院29寻找线索寻找线索在在FSM中寻找

12、线索中寻找线索建立建立FSM 迁移由端口输入事件引起,动作为端口输出事件迁移由端口输入事件引起,动作为端口输出事件(ASFASF) FSM可以分层,低层为子可以分层,低层为子FSM,可用于多个语境,可用于多个语境线索为迁移路径线索为迁移路径 关注路径上的输入事件、输出事件关注路径上的输入事件、输出事件2022-3-7上海大学计算机学院30SATMSATM系统系统2022-3-7上海大学计算机学院31欢迎欢迎! !请插入请插入ATMATM卡卡现金给付通道现金给付通道存款信封通道存款信封通道收据槽收据槽插卡槽插卡槽B1B2B31 12 23 30 04 45 56 67 78 89 9取消取消SA

13、TM终端终端SATMSATM系统系统2022-3-7上海大学计算机学院32S2输入输入PIN“取消取消”S3PIN错错请重新输入请重新输入S4PIN无效无效您的卡被留下,请联系银行您的卡被留下,请联系银行S1欢迎欢迎!请插入请插入ATM卡卡S5选择事务类型选择事务类型余额余额 存款存款 取款取款 取消取消SATM屏幕屏幕SiSATMSATM系统系统2022-3-7上海大学计算机学院331. 空闲空闲3. 事务选择事务选择2. 等待等待PIN坏卡坏卡/显示显示S1,退卡,退卡PIN无效无效/显示显示S4, 显示显示S1有效卡有效卡/显示显示S2PIN正确正确 / 显示显示S5取消取消/显示显示S

14、1B1B2B3SAMT的上层状态机的上层状态机/显示显示S1SATMSATM系统系统2022-3-7上海大学计算机学院341.空闲空闲2.1 第第1次次输入输入PIN3. 事务选择事务选择有效卡有效卡/ 显示显示S2PIN正确正确 / 显示显示S5PIN输入状态机输入状态机2.2 第第2次次输入输入PIN2.3 第第3次次输入输入PINPIN正确正确 / 显示显示S5PIN正确正确 / 显示显示S5PIN错或已取消错或已取消 / 显示显示S3,再显示,再显示S2卡错卡错 / 显示显示S1,退卡,退卡PIN错或已取消错或已取消/显示显示S4, 再显示再显示S1PIN错或已取消错或已取消 / 显示

15、显示S3,再显示,再显示S2寻找线索寻找线索2022-3-7上海大学计算机学院35端口输入事件端口输入事件有效卡有效卡卡错卡错PIN正确正确PIN错错取消取消u“PIN输入输入”中的事件中的事件端口输出事件端口输出事件显示显示S1显示显示S2显示显示S3显示显示S4显示显示S5寻找线索寻找线索2022-3-7上海大学计算机学院362.x.6按下按下“取消取消”2.x.1收到收到0数字数字2.x.2收到收到1个数字个数字2.x.3收到收到2个数字个数字2.x.4收到收到3个数字个数字2.x.5收到收到4个数字个数字X7取消取消X8取消取消X9取消取消X10取消取消数字数字 / 回显回显“* _

16、_ _” x1 数字数字 / 回显回显“* * _ _” x2数字数字 / 回显回显“* * * _” x3数字数字 / 回显回显“* * *” x4PIN正确正确 x5PIN错错 x6X11 已取消已取消“第第x次输入次输入PIN”FSM,x 1, 2, 3寻找线索寻找线索2022-3-7上海大学计算机学院37端口输入事件端口输入事件数字数字取消取消u“第第x次输入次输入PIN”中的事件中的事件端口输出事件端口输出事件回显回显“* _ _ _”回显回显“* * _ _”回显回显“* * * _”回显回显“* * * *”寻找线索寻找线索2022-3-7上海大学计算机学院38端口输入端口输入端

17、口输出端口输出屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”按下按下“1 1”回显回显“* * _ _ _ _ _ _”按下按下“2 2”回显回显“* * * * _ _ _ _”按下按下“3 3”回显回显“* * * * * * _ _”按下按下“4 4”回显回显“* * * * * * * *”(PIN正确)正确)显示屏幕显示屏幕5 5 “选择事务类型选择事务类型”FSMFSM中的线索为迁移路径,中的线索为迁移路径,关注输入、输出事件关注输入、输出事件线索示例线索示例1:第一次输入正确:第一次输入正确PIN(“1234”)寻找线索寻找线索2022-3-7上海大学计算机学院39端

18、口输入端口输入端口输出端口输出屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”按下按下“1 1”回显回显“* * _ _ _ _ _ _”按下按下“2 2”回显回显“* * * * _ _ _ _”按下按下“3 3”回显回显“* * * * * * _ _”按下按下“5 5”回显回显“* * * * * * * *”(PIN错)错)显示屏幕显示屏幕3 3 “PINPIN错错”屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”按下按下“1 1”回显回显“* * _ _ _ _ _ _”按下按下“2 2”回显回显“* * * * _ _ _ _”按下按下“3 3”回显回显“* *

19、 * * * * _ _”按下按下“取消取消”显示屏幕显示屏幕3 3 “PINPIN错错”线索示例线索示例2:第三次输入正确:第三次输入正确PIN端口输入端口输入端口输出端口输出屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”按下按下“1 1”回显回显“* * _ _ _ _ _ _”按下按下“2 2”回显回显“* * * * _ _ _ _”按下按下“3 3”回显回显“* * * * * * _ _”按下按下“4 4”回显回显“* * * * * * * *”(PIN正确)正确)显示屏幕显示屏幕5 5寻找线索寻找线索问题:线索爆炸问题:线索爆炸2022-3-7上海大学计算机学院40

20、从从1卡输入卡输入事务选择或卡输入:事务选择或卡输入:157条路径条路径b:1条;条;a.1:1条;条;a.2.3:5条;条;a.2.4.5:25条,条,a.2.4.6:125条条寻找线索寻找线索u从层次从层次FSM中怎样选择路径?中怎样选择路径?自底向上策略自底向上策略覆盖准则策略覆盖准则策略2022-3-7上海大学计算机学院41寻找线索寻找线索u自底向上策略自底向上策略2022-3-7上海大学计算机学院42“第第x次输入次输入PIN”中的线索路径中的线索路径输入事件序列输入事件序列路径路径12341234x1, x2, x3, x4, x5x1, x2, x3, x4, x51235123

21、5x1, x2, x3, x4, x6x1, x2, x3, x4, x6C Cx7, x11x7, x111C1Cx1, x8, x11x1, x8, x1112C12Cx1, x2, x9, x11x1, x2, x9, x11123Cx1, x2, x3, x10, x11x1, x2, x3, x10, x11寻找线索寻找线索u自底向上策略自底向上策略2022-3-7上海大学计算机学院43“PIN输入输入”FSM中的线索路径中的线索路径输入事件序列输入事件序列路径路径123412341 11235 12341235 12342, 32, 31235 C 12341235 C 12342

22、, 4, 52, 4, 5C C CC C C2, 4, 62, 4, 6怎样组合为完整线索?怎样组合为完整线索?寻找线索寻找线索覆盖准则策略覆盖准则策略节点覆盖节点覆盖边覆盖边覆盖2022-3-7上海大学计算机学院44寻找线索寻找线索输入事件输入事件输出事件输出事件覆盖的节点覆盖的节点覆盖的边覆盖的边屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”2.1a按下按下“1 1”回显回显“* * _ _ _ _ _ _”2.1.1x1按下按下“2 2”回显回显“* * * * _ _ _ _”2.1.2x2按下按下“3 3”回显回显“* * * * * * _ _”2.1.3x3按下按下“5 5”回显回显“* * * * * * * *”2.1.4x4(PIN错)错)显示屏幕显示屏幕3 3 “PINPIN错错”2.1.5, 3x6, 2寻找线索寻找线索2022-3-7上海大学计算机学院46屏幕屏幕2 2显示显示 “ “_ _ _ _ _ _ _”2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论