ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:88.54KB ,
资源ID:9637598      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9637598.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于代码的测试软件静态测试.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于代码的测试软件静态测试.docx

1、基于代码的测试软件静态测试成绩辽宁工程技术大学上机实验报告课程名称软件测试与评估实验题目基于代码的测试技术院系软件学院专业软件工程班级软件13-9班姓名王朝晖学号1320010920实验日期2016.5.12实验目的1.初步了解软件测试的基本知识。2.应用基本知识进行简单的测试。3.掌握代码测试技术的基本方法。4.针对案例,能够运用代码测试技术中的具体方法进行测试用例的设计。实验准备1.计算机一台,有 c与c+程序设计学习与实验系统的软件。2.了解至少一门程序设计语言,并能熟练应用。能够编写并运行有关实验的相关代码。3.了解程序数据流分析的方法并能应用方法分析程序。4.了解程序控制流分析的方法

2、并能应用。 实验进度本次共有 1 个练习,完成 1 个。实验内容1.根据三角形问题进行编程,分为等腰三角形,等边三角形,普通三角形以及不能构成三角形。2.对程序进行数据流分析。3.画出程序的控制流图。计算程序的环形复杂度,导出程序基本路径集中的独立路径条数,这是确定程序中每个可执行语句至少执行一次所必须的测试用例数目的上界;4.导出基本路径集,确定程序的独立路径;5.根据独立路径,设计测试用例的输入数据和预期输出。实验分析一实验步骤1.打开c与c+程序设计学习与实验系统平台,编写有关三角形问题的相关程序。2.对程序进行数据流分析。3. 对程序进行程序控制流分析。4.计算环形复杂度。5. 给出程

3、序的独立路径集合。6. 进行用例设计。7.总结归纳。二程序分析1.程序代码1)#include2)main()3)4) int A,B,C;5) printf(请输入三角形的三条边:);6) scanf(%d %d %d,&A,&B,&C);7) if(A0&B0&C0)&(A+B)C&(A+C)B&(B+C)A)8) 9) if(A=B&A=C)10) printf(该三角形是等边三角形!n);11) else12) if(A=B&B!=C)|(B=C&B!=A)|(A=C&A!=B)13) printf(该三角形是等腰三角形!n);14) else15) printf(该三角形是普通三角形

4、!n);16) 17) else18) 19) printf(ERROR!n);20) return main();21) 22)2.分析程序主要是根据三个整数a,b,c,构成一个三角形判定三角形的类型为等边三角形、等腰三角形、普通三角形还是构成不了三角形。要求输入的三个整数都是正数且a+bc,a+cb,b+ca,才能进行以后的判断。否则输出“ERROR!”,返回主程序,重新输入三个整数a,b,c。然后判断三角形的类型。如果a=b且a=c,输出“该三角形是等边三角形!”。如果a=b,b不等于c,或b=c,b不等于a,或a=c,a不等于b,输出“该三角形是等腰三角形!”。如果不是以上这两种情况,

5、输出“该三角形是普通三角形!”。3数据流分析数据流测试是以静态测试技术来发现缺陷的手段与方法。数据流测试是关注变量的赋值与使用位置的结构性测试方法。定义du-path。如果路径集合中的某个路径,定义两个节点,分别为该路径的起始节点和该路径的终止节点,该路径就为定义-使用路径。定义dc-path,如果某个定义-使用路径,除了起始节点之外没有其他定义节点,则该路径有定义-清除路径。数据流覆盖指标层次结构图描述数据“定义-使用”对,找出所有变量的定义-使用路径,考察测试用例对这些路径的覆盖程度,就可作为衡量测试效果的分析参考。由代码可得出节点4为定义a,b,c。节点7,9,12为使用a,b,c。根据

6、数据流测试数据流覆盖指标,拉普斯-韦约克层次结构图来描述程序的数据“定义-使用”对,并找出所有变量的定义-使用路径,可得到程序图G(P),如图1。使用路径du-path与清除路径dc-path,定义/使用节点和定义/使用路径,如表1,表2。 图1 G(P)表1 定义/使用路径变量路径(开始、结束)节点是定义清除吗a4,74,94,12否否是b4,74,94,12否否是c4,74,94,12否否是表2 定义/使用节点变量定义节点使用1a47,9,12b47,9,12c47,9,12 四程序控制流分析1.根据代码得出程序流程图 程序流程图是人们对解决问题的方法、思路或算法的一种描述。程序流程图有有

7、采用简单规范的符号,画法简单;结构清晰,逻辑性强;便于描述,容易理解的优点。 图2 程序流程图 2根据程序流程图,将程序流程图转换为控制流图:(1) 将程序流程图中的每个分支转换为一个独立的节点。(2) 在分支前的顺序块合并入节点。(3) 对所有的节点及程序控制的流向进行编号。如图3. 图3 程序控制图3.计算环形复杂度V(G) 环形复杂度度量主要用于计算程序的基本独立路径数目,并以此来设计接下来的测试用例。主要根据程序的控制流图。(1) V(G)=控制流图中的封闭区域的数量+1=1+3=4(2) V(G)=流图中边的数量-流图中节点的数量+2=11-9+2=4(3) V(G)=流图中判定节点

8、的数量+1=3+1=4故此程序的控制流图的环形复杂度为45独立路径集合根据上面的计算结果,可导出基本路径集,列出程序的独立路径(用代码给出的语句编号表示),可得出程序段的基本路径集中有四条独立路径,每条独立路径为一个独立的测试用例。路径如下。路径1:7-9-12-15-22路径2:7-9-12-13-22路径3:7-9-10-22路径4:7-17-206设计测试用例根据第五步的独立路径,设计测试用例输入数据和预期输出。设计的测试用例如表3所示。表3 测试用例表用例名称输入数据预期输出测试用例1A=5,B=6,C=7该三角形是普通三角形!测试用例2A=5,B=5,C=6该三角形是等腰三角形!测试

9、用例3A=5,B=5,C=5该三角形是等边三角形!测试用例4A=3,B=4,C=7ERROR!7测试用例截图1.测试用例1 输入三边,a=5,b=6,c=7,能构成一个三角形。且任意两边不相等。构成一个普通三角形。输出结果为“该三角形是普通三角形!”。如图4。图4 测试用例12.测试用例2输入三边,a=5,b=5,c=6,能构成一个三角形。且有两边相等。与第三边不相等。构成一个等腰三角形。输出结果为“该三角形是等腰三角形!”。如图5。图5 测试用例23.测试用例3输入三边,a=5,b=5,c=5,能构成一个三角形。且有任意两边相等。构成一个等边三角形。输出结果为“该三角形是等腰等边三角形!”。

10、如图6。图6 测试用例34.测试用例4 输入三边,a=3,b=4,c=7,不能构成一个三角形。输出结果为“ERROR!”。返回主函数,继续输入如图5。图7 测试用例4心得体会本次实验主要是掌握软件静态测试及其用例的设计。总结来说就是六个步骤。先是编写有关三角形问题的相关程序。在这个环节老师给我们一个参考程序。只要我们在老师给的程序的基础上进行改编。很快就能调试成功。这次用的程序相对简单,应用基础知识就能很好地完成。只要注意一些小细节,比如分号的书写,中括号的书写,变量是否定义。这一步完成的很顺利。对程序进行数据流分析。数据流分析是我的难点。以前没有接触到,不是很熟悉。对其中的定义掌握的也不是很

11、熟练。重点是数据流覆盖指标层次结构图,数据流覆盖指标层次结构图描述数据“定义-使用”对,找出所有变量的定义-使用路径,考察测试用例对这些路径的覆盖程度。这个地方用了很长时间理解消化。对程序进行程序控制流分析。对控制流的知识有一定的了解,应用起来更加熟练。首先先画程序流程图。由于都是简单的语句。得出流程图并不难。然后根据程序流程图,将程序流程图转换为控制流图:将程序流程图中的每个分支转换为一个独立的节点。在分支前的顺序块合并入节点。对所有的节点及程序控制的流向进行编号。根据步骤也能较快的完成。计算环形复杂度。应用三种方法计算环形复杂度。得出相同的结果。证明实验没有出错。前面的步骤成功。根据控制流

12、图得出四条独立路径。最后进行测试用例。根据四条独立路径,进行相应的测试用例。观察是否与预期的相同。这次的实验虽然简单容易,主要是自己的分析总结。实验可以很快的做完。但实验后的总结归纳才是最重要的的。通过这次实验。我对软件静态测试有了更加深刻的了解。能够更好的应用这方面的知识。能够独立自主的完成数据流的分析,画出数据流图。能够根据程序流程图画出控制流图。根据控制流图得到独立路径,计算环形复杂度。并进行测试用例。在做实验时我也有马虎的时候。在编写程序时会出现小的语法错误。能及时的改正。在画数据流图时,由于对知识点的了解不到位,所以出现了很大的问题。不知道该怎样画节点和边。浪费了很长时间。通过不断的理解,最后得到数据流图。并能分析出相关内容。以后的工作就相对简单了许多。这次的实验能够较好较快的完成。在以后的学习中,我会更加仔细认真。避免一些因为马虎的小错误。在做实验之前,先把应该理解的知识点弄懂弄会,避免在做实验的时候,发现不懂的地方。这样会浪费时间,影响效率。希望在下一次的实验中,能够更快更熟练地完成实验。使实验的目的发挥到最大。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1