软件测试实训报告.docx_第1页
软件测试实训报告.docx_第2页
软件测试实训报告.docx_第3页
软件测试实训报告.docx_第4页
软件测试实训报告.docx_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

软件测试实训目录一、黑盒测试原理及测试用例设计等价类划分法11.1测试用例的定义和特征11.2设计测试用例的基本准则11.3等价类划分原则11.4等价类划分法设计测试用例1二、黑盒测试原理及测试用例设计边界值分析法32.1边界值分析法概要32.2边界值分析法的思想32.3测试用例:找零钱最佳组合3三、黑盒测试原理及测试用例设计决策表法53.1决策表法思想53.2决策表的生成53.3决策表的简化53.4决策表法设计测试用例5四、黑盒测试原理及测试用例设计因果图法设计84.1因果图的定义84.2因果图法设计测试用例步骤8五、白盒测试方法逻辑覆盖法105.1语句覆盖105.2判定覆盖105.3条件覆盖105.4判定-条件覆盖115.5条件组合覆盖115.6路径覆盖115.7设计测试用例11六、基本路径法176.1基本路径法的思想176.2控制流图176.3环形复杂度(环路复杂性)176.4独立路径176.5基本路径测试步骤17七、LoadRunner基本使用19八、总结与体会23九、参考文献24一、黑盒测试原理及测试用例设计等价类划分法1.1测试用例的定义和特征测试用例的定义:(1)测试用例是为特定的目的而设计的一组测试输入、 执行条件和预期的结果。(2)测试用例是执行的最小实体。 测试用例的特征:(1)最有可能抓住错误的;(2)不是重复的、多余的;(3)一组相似测试用例中最有效的;(4)既不是太简单,也不是太复杂。1.2设计测试用例的基本准则测试用例的代表性 能够代表并覆盖各种合理的和不合理的、合法的和非法的、边界的和越界的以及极限的输入数据、操作和环境设置等。测试结果的可判定性 即测试执行结果的正确性是可判定的,每一个测试用例都应有相应的期望结果。测试结果的可再现性 即对同样的测试用例,系统的执行结果应当是相同的。1.3等价类划分原则等价类划分设计方法是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少量具有代表性的数据作为测试用例。 定义:将程序的输入域划分为若干部分,然后从每个部分中选取少数代表性数据当作测试例。原因:由于实现穷举测试的不可能性,只有从大量的可能数据中选取一部分作为测试用例。效果:经过类别划分后,每一类的代表性数据在测试中的作用都等价于这一类中的其他值。手段:在设计测试用例时,在需求说明的基础上划分等价类,列出等价表,从而确定测试用例。1.4等价类划分法设计测试用例输入三个整数作为三边的边长构成三角形。当此三角形为一般三角形、等腰三角形、等边三角形时,分别作计算。用等价类划分方法为该程序进行测试用例设计。分析程序规格说明书中给出和隐藏的对输入条件的要求,列出等价类表:三条边:必须是大于0的整数三边构成的关系:两边之和必须大于第三边,两边之差必须小于第三边,且必须是大于0的整数等价类表:输入条件有效的等价类编号无效等价类编号边长大于0的整数1小于07等于08除数字以外的字符9边长的关系两边之和大于第三边2两边之和小于第三边10两边之差小于第三边3两边之差大于第三边11三条边相等4两条边相等5满足两个条件外,不规则长度6测试用例:测试用例编号输入数据预期输出边长1边长2边长3结果1333满足2554满足3533满足4555满足5636满足6453满足7-123不满足8101不满足922b不满足10428不满足11852不满足二、黑盒测试原理及测试用例设计边界值分析法2.1边界值分析法概要边界值分析法就是 对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。2.2边界值分析法的思想故障往往出现在输入变量的边界值附近。例如,一个循环条件为“”时,却错写成“100R=02.R有效:0R100(钱给多)2_2.P无效:PR(钱给少)2_3.P有效:R=P100R=00R1000R=100PR输出为相应错误提示信息有效输入(找零):0R=100R=P=100此时考虑的输出:(RR=P-R假设计算正确不考虑此种情况无效输出)0=RR45=RR1010=RR5050=RR100RR:0、1、4、5、9、10、49、50、99五、为满足以上之各种情形,测试用例设计如下:1.货品价格=1012.货品价格=03.货品价格=-14.货品价格=100,付款金额=1015.货品价格=100,付款金额=996.货品价格=100,付款金额=100不找零7.货品价格=99,付款金额=100N118.货品价格=96,付款金额=100N149.货品价格=95,付款金额=100N5110.货品价格=91,付款金额=100N51,N1411.货品价格=90,付款金额=100N10112.货品价格=51,付款金额=100N104,N51,N1413.货品价格=50,付款金额=100N50114.货品价格=1,付款金额=100N501,N10=4,N5=1,N1=4三、黑盒测试原理及测试用例设计决策表法3.1决策表法思想决策表的概念:决策表是分析和表达多逻辑条件下执行不同操作情况的工具。在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。决策表很适合于处理这类问题。3.2决策表的生成决策表通常由以下4部分组成:条件桩列出问题的所有条件条件项针对条件桩给出的条件列出所有可能的取值动作桩列出问题规定的可能采取的操作动作项指出在条件项的各组取值情况下应采取的动作 (1) 确定规则的个数。有n个条件的决策表有2n个规则(每个条件取真、假值)。(2) 列出所有的条件桩和动作桩。(3) 填入条件项。(4) 填入动作项,得到初始决策表。(5) 简化决策表,合并相似规则。若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值无关,称为无关条件。3.3决策表的简化简化是以合并相似规则为目标;若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。3.4决策表法设计测试用例某厂对一部分职工重新分配工作,分配原则是: (1)年龄不满20岁,文化程度是小学者脱产学习,文化程度是中学者当电工; (2)年龄满20岁但不足50岁,文化程度是小学或中学者,男性当钳工,女性当车工;文化程度是大学者技术员; (3)年龄满50及50以上,文化程度是小学或中学者当材料员,文化程度是大学者当技术员。试分析规格说明书,建立决策表,并简化决策表的用例测试设计条件:A1:A:A3)&(z5) j=x*y+10; /语句块2 j=j%3; /语句块3试做出三角形问题的语句覆盖,条件覆盖,判定覆盖,判定条件覆盖、组合条件覆盖的测试用例.并注明满足覆盖的条件 1)判定/条件覆盖对于第一个判定a0&b0&c0:条件a0取真值记为T1,取假值记为-T1条件b0取真值记为T2,取假值记为-T2条件c0取真值记为T3,取假值记为-T3对于第二个判定(a+bc)&(a+cb)&(b+ca):条件a+bc取真值记为T4,取假值记为-T4条件a+cb取真值记为T5,取假值记为-T5条件b+ca取真值记为T6,取假值记为-T62.对下面的流程图用逻辑覆盖法设计测试用例(至少三种)1).语句覆盖:语句覆盖可以保证程序中的每个语句都得到执行。测试用例输入为:x1=3、x2=0输出x3=0,程序执行的路径是:123456782.判定覆盖:测试用例输入为:x1=2、x2=1输出x3=0,程序执行的路径是:123578;测试用例输入为:x1=3、x2=0输出x3=0,程序执行的路径是:12345678.3).条件覆盖对于第一个判定(x1=3)or(x21):条件x1=3取真值记为T1,取假值记为-T1条件x21取真值记为T2,取假值记为-T2对于第二个判定(x12)and(x2=0):条件x12取真值记为T3,取假值记为-T3条件x2=0取真值记为T4,取假值记为-T4基本路径测试法(画出程序的流程控制图计算环路复杂度画出图形矩阵)主要代码如下:1.If(inta=intb+intc)_2.Or(intb=inta+intc)_3.Or(intc=intb+inta)Then4.strMsg=三角形两边之和必须大于第三边+vbCrLf+非三角形5.Else6.If(inta=intb)_7.And(intb=intc)Then8.strMsg=三角形的三条边都相等+vbCrLf+等边三角形9.Else10.If(inta=intb)_11.Or(inta=intc)_12.Or(intc=intb)Then13.strMsg=三角形的任意两边相等+vbCrLf+等腰三角形14.Else15.strMsg=三角形的各边均非等+vbCrLf+普通三角形16.EndIf17.EndIf18.EndIf1 根据上面的代码画出程序的控制流图。2计算环路复杂度。V(G)=93求出基本路径组合。P1:1-4-18P2:1-2-4-18P3:1-2-3-4-18P4:1-2-3-6-7-8-17-18P5:1-2-3-6-10-13-16-17-18P6:1-2-3-6-10-11-13-16-17-18P7:1-2-3-6-10-11-12-13-16-17-18P8:1-2-3-6-10-11-12-15-16-17-18要点:从较短路径顺序增加每个分支尽可能走一次4设计测试用例,按照表1的形式,设计用例。六、基本路径法6.1基本路径法的思想路径测试就是设计足够的测试用例覆盖程序中所有可能的路径.但在实际的问题中,一个不太复杂的程序,其路径都是一个庞大的数字,为解决这一难题,只得把覆盖的路径压缩到一定的范围内.基本路径测试法就是这样的一种测试方法,它是在程序控制流图的基础上,通过分析控制结构的环路复杂性,导出可执行的基本路径的集合,从而设计测试用例.设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。6.2控制流图程序的控制流图:描述程序控制流的一种图示方法。6.3环形复杂度(环路复杂性)程序圈复杂度:McCabe复杂性度量。从程序的环路复杂性可导出程序基本路径集合中的独立路径条数,这是确定程序中每个可执行语句至少执行一次所必须的测试用例数目的上界。6.4独立路径独立路径是指包括一组以前没有处理的语句或条件的一条路径。6.5基本路径测试步骤基本路径测试步骤根据给出的程序流程图,完成以下要求:(1)画出相应的控制流图。(2)计算环形复杂度。(3)给出相应的图矩阵。(4)找出程序的独立路径集合。解答:(1)控制流图如下所示:(2)环形复杂度为2+1=3(3)图矩阵:图中(A2),X=X+1四个节点分别标识为1,2,3,4,则图矩阵为0ab000c0000e0000(4)独立路径:总共4条独立路径第一条:(A2)第二条:(A2)第三条:(A2)X=X+1第四条:(A2)X=X+1七、LoadRunner基本使用制定测试计划(包括测试实例的设计、场景的设计等)。录制测试脚本(对用户的操作过程进行录制、回放和修改)。创建测试场景(模拟用户的操作)。运行测试(运行整个场景)。监视场景(对服务器的各项性能指标进行实时监测)。分析测试结果(帮助测试人员对测试结果进行分析)。使用LoadRunner测试网站邮箱登录的操作过程。选择程序组里面的LoadRunner/virtual user generator。选择【web(http/html)】协议。不同的测试对象选择不同的协议,针对web网站,选择web协议。切换到脚本视图,选择【view】/【script view】。其中vuser_init和vuser_end一般用于存放应用程序初始化和关闭时的脚本,这两个脚本只执行一遍。Action中存放的是实际的主体脚本,可以多次运行,测试人员也可以创建多个Action脚本。单击工具栏上的【start recording】按钮,开始录制脚本。【URL】中填写要测试的网址()。选择【option】按钮,配置browser,默认是IE,如系统默认的浏览器不是ie,需要配置【specify path to application】。点击【ok】按钮,开始录制。这是会自动打开网页。需要耐心等待,lr自动会打开该网页,不能人工打开。输入用户名和密码,点击登录按钮,直到登录后的界面完全显示后再点击录制工具栏上的停止按钮。录制完成后,需要测试一遍该脚本。点击工具栏上的运行脚本按钮,运行完毕后会自动生成一个报告,点击页面上的recording summary链接,可以进入报告页面。点击【TOOLS】菜单下的【create controller scenario】选项,选择【manual scenario】(人工场景),设置number of vusers(虚拟用户数)为10。点击【edit schedule】,设置【ramp up】(开始)选项【load setting】,选择【duration】,设置【ramp down】。单击【start scenario】开始测试。测试完成后,单击【result】菜单,选择【analyze results】菜单,生成结果分析报告。分析测试结果(要有文字说明和截图)。使用QTP测试windows版的飞机订票系统(找出该程序的BUG,愈多愈好。BUG的编写格式如下(如果有多个bug参照该格式分别进行说明):首先需要熟悉QTP自带的C:Program FilesMercury InteractiveQuickTest Professionalsamplesflightappflight4a.exe程序,具体可以使用该程序的help文件。登录后的界面如下所示:单击【开始】-【程序】-【QuickTest professional】-【QuickTest professional】,启动QTP。具体测试过程参见C:Program FilesMercury InteractiveQuickTest Professionalhelp QTP4BPT.pdf文件。单击【automation】菜单下的【record and run settings】。选择【windows application】标签,设置【record and run only on】下的【application specified below】在【application】文本框中填入C:Program FilesMercury InteractiveQuickTest Professionalsamplesflightappflight4a.exe。这次我们使用QTP自动的航班订票系统程序来测试。单击【tools】菜单下的【option】,单击标签【Run】,将【view results when run session ends】前面的勾去掉。单击工具栏上的【record】按钮,QTP自动启动flight程序。在【agent name】输入mercury,【password】输入mercury,登录。进入后随便添加一个航班记录即可。单击【stop】按钮停止记录。单击工具栏上的【run】按钮,进行回放。单击【automation】菜单下的【result】菜单查看测试结果。具体如下所示:分析测试结果(要有文字说明和截图)。使用CppTest测试一段c代码注意:安装c+test之前需要先安装vc+6.0。将以下代码输入到VC+6.0环境下进行编译,确保编译通过。需要编写测试用例:可以使用系统自动生成的TC,如果系统的测试用例不完善,需要自己设计TC。TC格式如下:#include #include int user_input_handler(char *user_input, char * output)int result = 0;if (strcmp(load, user_input) = 0) strcpy(output,user_input); else if (strcmp(save, user_input) = 0) strcpy(output, user_input); else if (strcmp(quit, user_input) = 0) strcpy(output, user_input); else result = -1;return result;void main(void)char res = save;char des5;printf(%dn,user_input_handler(load,des);安装c+test。启动c+test,单击【file】菜单下的【new project】子菜单,在出现的对话框中选择【import visual c+ 6.0 project】,输入测试工程名和对应的c+工程。单击【test】下的【read symbols】。单击【test】下的【test using】-【active configuration】,执行单元测试。单击标签【unit testing(native)】,查看测试用例的通过情况。如果测试用例不全,需要添加tc,右键单击任意一个tc,选择【add】,定制arguments。单击【test】下的【test using】-【configurations】-【built in】-【coding standards】-【crules】,执行代码规范检查。针对以上的c代码,进行单元测试,如果c+test生成的TC不完善,请你补充完善。如果代码不规范,请加以修改。八、总结与体会要想成为好的测

温馨提示

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

评论

0/150

提交评论