Counter集成测试用例设计思路参考_第1页
Counter集成测试用例设计思路参考_第2页
Counter集成测试用例设计思路参考_第3页
Counter集成测试用例设计思路参考_第4页
Counter集成测试用例设计思路参考_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

1、testwer集成测试用例设计思路参考初稿:宋峰 HYPERLINK mailto:songfeng51songfeng51修订:徐林林 HYPERLINK mailto:xulinlin51xulinlin51集成测试用例设计思路集成测试用例的设计可以从以下几大方面来考虑:1、模块的消息接口(对于每类消息的每个具体消息,都应设计测试用例;对于消息结构中每个数据成员的各种合法取值情况都应设计测试用例;对于消息结构中每个数据成员的非法取值情况也应设计测试用例;模拟各种消息丢失、超时到达、不期望的消息情况)。2、模块的功能流程(根据概要设计文档描述中所确定的模块应该完成的功能,每个功能描述都应设计

2、测试用例;需要多个模块以及他们之间接口共同完成的功能,需要设计测试用例)。3、模块所使用的数据表(对于全局数据表、重要数据表的:数据的修改操作、数据项的增加、删除操作、数据表增加满、数据表删除空、数据表项频繁的增加、删除)。4、模块需要调用到的桩函数(对于无返回值或者返回值对被测试模块没有作用的桩,主要是检查一下传给桩的参数是否正确、合理,一个用例就够了;对于返回值对被测试模块产生影响的桩,则对每一个或者每一类返回值都应设计相应的测试用例)。5、模块对外提供的函数接口(一般来说,模块的对外函数接口都完成一个完整的子功能,因此,测试用例首先要验证该接口能否正确完成该功能;函数接口各个输入非法值的

3、情况,接口函数应该对所有的输入参数的合法性进行检查;函数接口各个参数的边界值测试;函数接口各个参数的合法和非法输入组合测试)。6、模块的处理性能(对于处理速度有要求的模块,应测试其处理速度是否能达到规格要求对于模块在大负荷,如大呼叫量、大流量等情况下的处理能力,应该设计测试用例进行验证)。整个集成测试用例设计分成4步:1、确定测试层次和范围。2、确定测试策略。3、根据测试策略确定测试子项。4、针对测试子项设计测试用例。一个良好的集成测试用例应该包括的合适的检查点,以下是可以参考的检查点:1、功能正确性。2、消息流程是否正确。3、4、nfIfffM来往消息中的数据项、参数是否正确。消息异常、错误

4、、超时等是否能正常处理。5、各个模块的状态迁移、以及相关数据结构的正确性。6、资源占用和释放情况,在运行过程中,资源的占用和释放是否正常。7、全局数据的正确性,如全局变量、全局数组、全局数据表。8、桩函数参数。9、函数调用的顺序。接口分析以counter软件为例,考虑6个模块间集成测试(不考虑界面模块和结果输出模块),采用大爆炸集成测试策略,测试子项为6个模块间集成,其接口分析如下:输入:从源文件统计主控模块上给进去,对应主控模块的输入。输出:从源文件统计主控模块出来,对应主控模块的输出。查看主控模块会发现,主控模块只有一个函数MainStatFun,其输入为:g_iBlankLineFlag

5、统计空行标志位;g_iCommLineFlag统计注释行标志位;g_iCodeLineFlag统计代码行标志位;g_iTotalLineFlag统计总行标志位;g_szStatFileName被统计文件的全路径名。其输出为:g_iBlankLineNum统计得到的空行数;g_iCodeLineNum统计得到的代码行数;g_iCommLineNum统计得到的注释行数;g_iTotalLineNum统计得至U的总行数。因此接口分析结果如下:接口分析结果11J外部接对外输出内部接口(内部输出)1、g_iBlankLineFlag2、g_iCommLineFlag3、g_iCodeLineFlag4、

6、g_iTotalLineFlag5、g_szStatFileName1、g_iBlankLineNum2、g_iCodeLineNum3、g_iCommLineNum4、g_iTotalLineNum1、参数检查模块接口2、统计空行模块接口3、统计代码行模块接口4、统计注释行模块接口5、统计总行模块接口也就是说要做这6个模块间的集成测试,就是外部输入5个全局变量,从对外输出的4个全局变量以及5个内部接口来进行观察。当然观察点也可以减少一些,比如不是检查所有的内部接口。如果单元测试很充分,内部接口甚至可以不用观察。以counter软件为例,集成后功能包含:1、参数检查功能:首先需要覆盖外部输入划

7、分出来的统计标志位的STAT、NOT_STAT以及文件的合法和不合法;接着看前面选取的数据有没有覆盖到输出域的-1和非-1、RET_OK和RET_FALSE,如果已经覆盖那么不需要再补充测试数据。2、统计代码行功能:首先从外部输入角度考虑对g_iCodeLineFl的STAT和NOT_STAT进行覆盖;接着看前面选取的数据有没有覆盖到输出域的-1、0和极大值,如没有完全覆盖,补充测试数据。3、统计注释行功能:类似于统计代码行功能。4、统计空行功能:类似于统计代码行功能。5、统计总行功能:类似于统计代码行功能。6、组合统计:可以同时进行所有统计,也可以使用正交分析法来考虑组合。集成后功能角度具体

8、参数分析参数检查功能外部输入g_iBlankLineFlagSTATNOT_STATg_iCommLineFlagSTATNOT_STATg_iCodeLineFlagSTATNOT_STATg_iTotalLineFlagSTATNOT_STATg_szStatFileName合法不合法输出域对外输g_iBlankLineNum-1非-1覆盖出g_iCodeLineNum-1非-1g_iCommLineNum-1非-1g_iTotalLineNum-1非-1外部接参数检输入前面已经覆盖Tesng查模块返回值RET_OK接口统计空行模块接口RET_FALSE可以不观察统计代码行功能外部输入组合

9、统计统计代码行模块接口统计注释行模块接口统计总行模块接口g_iBlankLineFlagNOT_STATg_iCommLineFlagNOT_STATg_iCodeLineFlagSTAT可以不观察可以不观察可以不观察g_iTotalLineFlagNOT_STATg_szStatFileName合法NOT_STAT输出域对外输g_iBlankLineNum-1覆盖出g_iCodeLineNum-10极大值g_iCommLineNum-1g_iTotalLineNum-1外部接参数检查模块接口可以不观察口统计空行模块接口可以不观察统计代输入前面已经覆盖码行模块接口输出g_iCodeLineNu

10、m考虑对外输出中已经覆盖统计注释行模块接口可以不观察统计总行模块接口可以不观察外部输入g_iBlankLineFlagSTATNOT_STATg_iCommLineFlagSTATNOT_STATg_iCodeLineFlagSTATNOT_STATg_iTotalLineFlagSTATNOT_STATg_szStatFileName合法输出域对外输g_iBlankLineNum具体行数覆盖出g_iCodeLineNum具体行数g_iCommLineNum具体行数g_iTotalLineNum具体行数外部接参数检查模块接口可以不观察口统计空输入前面已经覆盖行模块输出考虑对外输出中已接口g_i

11、BlankLineNum经覆盖统计代输入前面已经覆盖tesng码行模块接口统计注输出g_iCodeLineNum输入释行模输出块接口g_iCommLineNum统计总输入行模块输出接口g_iTotalLineNum考虑对外输出中已经覆盖前面已经覆盖考虑对外输出中已经覆盖前面已经覆盖考虑对外输出中已经覆盖大爆炸集成例子:测试用例编号COUNTER-IT-Level1-001测试项目测试主控等六个模块的集成测试标题参数合法,只统计代码行,测试参数检查功能测试策略大爆炸集成(正向)重要级别高预置条件创建文件D:Counter_IT_TestcaseCase2.c,文件内容如下:inta=0;/*sl

12、dkfj*/*sldkfj*/inta=0;/*sldkfj*/inta=0;/*sldkfj*/输入参数1:g_bStatBlankLineFlag=NOT_STAT;参数2:g_bStatCodeLineFlag=STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;参数5:g_szStatFileName=“D:Counter_IT_TestcaseCase2.c”;执行步骤预期输出g_iBlankLineNum=0g_iCodeLineNum=3g_iCommLineNum=0g_iTotalLi

13、neNum=0测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试策略重要级别测试主控等六个模块的集成文件不存在,只统计代码行,测试参数检查功能大爆炸集成(反向)高预置条件D:Counter_IT_Testcase目录下不存在Case2.c文件输入参数1:g_bStatBlankLineFlag=NOT_STAT;参数2:g_bStatCodeLineFlag=STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;szStatFileName=“D:Counter_IT_Testca

14、seCase2.c”;执行步骤预期输出g_iBlankLineNum=0g_iCodeLineNum=0g_iCommLineNum=0g_iTotalLineNum=0自顶向下集成例子:测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试主控等六个模块的集成参数合法,只统计代码行,测试参数检查模块接口(主控模块+参数检查模块)测试策略重要级别预置条件自顶向下(正向)高创建文件D:Counter_IT_TestcaseCase1.c,文件内容如下:inta=0;/*sldkfj*/*sldkfj*/inta=0;/*sldkfj*/inta=0;/*sldkfj*/输入参

15、数1:g_bStatBlankLineFlag=NOT_STAT;参数2:g_bStatCodeLineFlag=STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;参数5:g_szStatFileName=“D:Counter_IT_TestcaseCase1.c”;执行步骤预期输出返回RET_OK测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试主控等六个模块的集成参数不合法(不统计代码行、注释行、空行、总行),测试参数检查模块接口测试策略重要级别预置条件自顶向下(反向)高创

16、建文件D:Counter_IT_TestcaseCase21.c,文件内容如下:inta=0;/*sldkfj*/*sldkfj*/inta=0;/*sldkfj*/inta=0;/*sldkfj*/输入参数1:g_bStatBlankLineFlag=NOT_STAT;参数2:g_bStatCodeLineFlag=NOT_STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;参数5:g_szStatFileName=“D:Counter_IT_TestcaseCase21.c”;预期输出返回RET_F

17、AIL基于功能集成例子:测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试策略重要级别预置条件测试空行模块功能的集成参数合法,空文件,只统计空行,统计空行模块接口基于功能(反向)高创建文件D:Counter_IT_TestcaseCase23.c,文件内容为空;输入参数1:g_bStatBlankLineFlag=STAT;参数2:g_bStatCodeLineFlag=NOT_STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;参数5:g_szStatFileName=“D:C

18、ounter_IT_TestcaseCase23.c”;执行步骤预期输出g_iBlankLineNum=0输出域覆盖例子:测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试策略重要级别预置条件输入测试主控等六个模块的集成文件被独占,文件大小为2M,只统计代码行,测试参数检查模块接口自顶向下(输出域覆盖)高创建文件D:Counter_IT_TestcaseCase11.c,文件大小为2M。参数1:g_bStatBlankLineFlag=NOT_STAT;参数2:g_bStatCodeLineFlag=STAT;参数3:g_bStatCommLineFlag=NOT_STAT;参数4:g_bStatTotalLineFlag=NOT_STAT;参数5:g_szStatFileName=“D:Counter_IT_TestcaseCase11.c”;执行步骤预期输出返回RET_FAIL测试用例编号COUNTER-IT-Level1-001测试项目测试标题测试主控等六个模块的集成统计代码行、空行、注释行、总行,但文件中只有代码行,测试参数检查功能测试策略重要级别预置条件大爆炸(输出域覆盖)高创建文件D

温馨提示

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

评论

0/150

提交评论