白盒测试书的题目

C语言白盒测试实例;文档管理信息表;主题版本内容关键字参考文档创建时间创建人职位最新;白盒测试实例之一――需求说明;三角形的问题在很多软件测试的书籍中都出现过,问题;题目:根据下面给出的三角形的需求完成程序并完成测;很多初学者一看到这个需求(详见白盒测试实例之一―;大部分人的思路:;1、首先建立一个main函数,main函数第一件;点评:这样的思路做出来的程
C语言白盒测试实例
文档管理信息表 主题 版本 内容 关键字 参考文档 创建时间 创建人 职位 最新发布日期 C语言白盒测试实例 TIBCO_SDETest_V1.0 设计 白盒 单元测试
冯昌建 SDETest主管
白盒测试实例之一――需求说明 三角形的问题在很多软件测试的书籍中都出现过,问题虽小,五脏俱全,是个很不错的软件测试的教学例子。本文借助这个例子结合教学经验,从更高的视角来探讨需求分析、软件设计、软件开发与软件测试之间的关系与作用。
题目:根据下面给出的三角形的需求完成程序并完成测试:
一、输入条件:
1、 条件1:a+b>c
2、 条件2:a+c>b
3、 条件3:b+c>a
4、 条件4:0<a<200
5、 条件5:0<b<200
6、 条件6:0<c<200
7、 条件7:a==b
8、 条件8:a==c
9、 条件9:b==c
10、条件10:a2+b2==c2
11、条件11:a2+ c2== b2
12、条件12:c2+b2== a2
二、输出结果:
1、不能组成三角形
2、等边三角形
3、等腰三角形
4、直角三角形
5、一般三角形
6、某些边不满足限制 白盒测试实例之二――答案 很多初学者一看到这个需求(详见白盒测试实例之一――需求说明收藏),都觉得很简单,然后立刻就开始动手写代码了,这并不是一个很好的习惯。如果你的第一直觉也是这样的,不妨耐心看到文章的最后。
大部分人的思路:
1、首先建立一个main函数, main函数第一件事是提示用户输入三角形的三边,然后获取用户的输入(假设用户的输入都是整数的情况),用C语言来写,这一步基本上不是问题(printf和scanf),但是要求用java来写的话,很多学生就马上遇到问题了,java5.0及之前的版本不容易获取用户的输入。
点评:这样的思路做出来的程序只能通过手工方式来测试所有业务逻辑,而且这个程序只能是DOS界面版本了,要是想使用图形化界面来做输入,就得全部写过代码。
2、业务处理流程的思路用流程图表示如下:
3、C语言代码:
1. #include 2. void main() 3. { 4.
int a, b, 5.
printf(\6.
if(0c && a+c>b && c+b>a) 0.
if(a==b && b==c && a==c)
//这里可以省掉一个判断 2.
printf(\是等边三角形\4.
if(a==b || b==c || a==c) 8.
printf(\是等腰三角形\0.
if(a*a+b*b==c*c || a*a+c*c==b*b || b*b+c*c==a*a) 4.
printf(\是直角三角形\6.
printf(\是一般三角形\0.
printf(\不能组成三角形\7.
printf(\某些边不满足限制\2.
} 3. } 点评:这样的思路做出来的程序只能通过手工方式来测试所有业务逻辑,而且这个程序只能是DOS界面版本了,要是想使用web或图形化界面来做输入,就得全部写过代码。 相关阅读: 白盒测试实例之一――需求说明收藏 白盒测试技术――方法与实践篇 白盒测试技术――白盒测试理论篇 如何编写单元测试用例(白盒测试) 白盒测试中的六种覆盖方法 白盒测试实例之三――需求分析 关键字:白盒测试、需求分析
需求分析是后续工作的基石,如果分析思路有问题,后续工作可能就会走向不正确的方向,比如:代码重用性差、难于测试、难于扩展和难于维护等。反而,如果需求分析做的好,对设计、开发和测试来说,都可能是很大的帮助。
看到题目给出的条件达12个之多,粗粗一看,好像很复杂,但仔细分析之后,发现可以把它们分成4组来讨论:
1、 条件1:a+b>c; 条件2:a+c>b; 条件3:b+c>a
这三个表达式有什么特点呢?实际上它们的逻辑是一样的:两个数之和大于第三个数。那么,前面程序的写法就存在逻辑重复的地方,应该把这个逻辑提取到一个函数中。
2、 条件4:0<a<200; 条件5:0<b<200; 条件6:0<c<200
这三个表达式也是同一个逻辑:判断一个数的范围是否在(0, 200)区间内,也应该把这个逻辑提取到一个函数中,去掉重复的逻辑,提高代码的可重用性。
可重用性的好处:比如,现在用户的需求改为了三条边的取值范围要改为[100,400],那么,按前面的思路来说,需要改3个地方,而现在只需要在一个函数里改1个地方,这就是代码重用的好处。
3、条件7:a==b; 条件8:a==c; 条件9:b==c
这三个表达式的逻辑:判断两个数是否相等。也应该把它提取到一个函数中。
我们进一步来分析一下判断是否是等边三角形或等腰三角形的条件:
(1)前面程序的判断是从最直观的方式(a==b && b==c && a==c)(实际上只需要两个表达式成立即可)三条边都相等来判定是等边三角形;(a==b || b==c || a==c)只有两条边相等来判定是等腰三角形。
(2)转变一下思路:给定三个整数,然后用一个函数来判断这三个整数有几个相等,返回相等的个数,如果返回值等于3,那么它是等边三角形,如果返回值是2,那么它三亿文库包含各类专业文献、行业资料、外语学习资料、文学作品欣赏、C语言白盒测试实例38等内容。 
 A.语句覆盖 B.条件覆盖 C.路径覆盖 D.判定覆盖 答案:A 分数:1 题型:单选题 难度:1 14.语句覆盖.判定覆盖.条件覆盖和路径覆盖都是白盒测试法设计测试用例的...  C 语言面试题大汇总之华为面试题 1、局部变量能否...黑盒:针对系统功能的测试 白盒:测试函数功能,各...例子: 硬件时钟;多线程中被多个任务共享的变量等 ...  [说明] 逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 Struct_Protobuf...  [说明] 逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 getit( int m...  C语言笔试面试精选题_面试_求职/职场_实用文档。C ...黑盒:针对系统功能的测试白合:测试函数功能,各函数...并举出三个不同的例子? 提示编译器对象的值可能在...  c语言面试问题 9页 免费如要投诉违规内容,请到百度...黑盒:针对系统功能的测试 白合:测试函数功能,各...给你一个递规反向输出字符串的例子,可 谓是反序的...  2016年计算机二级c语言题库及答案_IT认证_资格考试/认证_教育专区。2016 年...白盒测试的主要方法有逻辑驱动、路径测试等,主 要用于软件验证。 10.下面不...  C 语言基础软件设计常用的工具有: 图形工具: 程序流程图、 N-S图、 PAD图、...黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因 果图和...白盒测试用例练习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
白盒测试用例练习题
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
你可能喜欢以下试题来自:
单项选择题 白盒测试主要用于测试()。
A.程序的内部逻辑
B.程序的正确性
C.程序的外部功能
D.结构和理性
为您推荐的考试题库
你可能感兴趣的试题
A.分析模型
B.设计模型
C.用例模型
D.实现模型
A.持续的交流和沟通
B.用最简单的设计实现用户需求
C.用测试驱动开发
D.关注用户反馈
A.结构化分析
B.结构化设计
C.面向对象分析与设计
D.面向构件设计
A.螺旋模型
B.原型方法
C.瀑布模型
D.面向系统的方法
热门相关试卷
最新相关试卷}

我要回帖

更多关于 白盒测试书 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信