- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
7软件工程实现2下
实现—软件测试部分
实现
7.1 编码
7.2 软件测试基础
7.3 单元测试
7.4 集成测试
7.5 确认测试
7.6 白盒测试技术
7.7 黑盒测试技术
7.8 调试
7.9 软件可靠性
7.10 小结
设计测试方案是测试阶段的关键技术问题。
测试方案包括具体的测试目的(例如,预定要测试的具体功能),应该输入的测试数据和预期的结果。通常又把测试数据和预期的输出结果称为测试用例。其中最困难的问题是设计测试用的输入数据。
不同的测试数据发现程序错误的能力差别很大,为了提高测试效率降低测试成本,应该选用高效的测试数据。因为不可能进行穷尽的测试,选用少量“最有效的”测试数据,做到尽可能完备的测试就更重要了。
7.6 白盒测试技术
有选择地执行程序中某些最有代表性的通路是对穷尽测试的惟一可行的替代办法。所谓逻辑覆盖是对一系列测试过程的总称,这组测试过程逐渐进行越来越完整的通路测试。测试数据执行(或叫覆盖)程序逻辑的程度可以划分成哪些不同的等级呢?
从覆盖源程序语句的详尽程度分析。
7.6.1 逻辑覆盖
被测试模块的流程图
a
f
逻辑覆盖的模块例子
4个可能的路径以及应该满足的表达式
L1(ace):M and N
L2(abd):~M and ~N
L3(abe):~M and N
L4(acd):M and ~N
其中
M = {(A1) and (B=0)};N = {(A=2) or (X/A1)}
语句覆盖
语句覆盖:就是指设计若干个测试用例,使得用这些测试用例执行测试之后使得每一条可执行语句至少被执行一遍。
对于前面的例子,L1包含了所有的可执行语句,所以根据L1来设计测试用例就可以达到100%语句覆盖。
用例如下:{input(A,B,x); output(A,B,x)}
={(2,0,4), (2,0,3)}
语句覆盖的不足
语句覆盖可以保证检验了每一个可执行语句。
但是不能保证用于控制的逻辑运算得到充分的检验。
比如第一个逻辑运算中的and错写成了or,最后的结果仍然成立。
语句覆盖是最弱的逻辑覆盖。
if (A1) and (B=0)
x=x/A;
if (A=2) or (X1)
x=x+1;
判定覆盖
又称为分支覆盖:设计若干个测试用例,执行测试,使得被测单元中的每个判定的取值TRUE和FALSE分支至少经历一次。
对于判定(A1) and (B=0)和(A=2) or (X0)分别测试其true, false分支。可以选择L1,L2组合或者L3,L4组合。
对于L1,L2组合,L1: {(2,0,4),(2,0,3)} L2:{(1,1,1), (1,1,1)};
对于L3,L4组合,L1: {(2,1,1),(2,1,2)} L2: {(3,0,3), (3,1,1)};
判定覆盖的不足
复合判定中,某个子判定的错误不一定引起整个判定的值的改变。这样的错误可能被漏掉。
比如:使用上面定义的测试的时候,如果第二个判定中X1成为了X1,最后的结果还是一样的。两组测试用例都不能测试这些值。
弥补这个缺陷的是条件覆盖。
条件覆盖(1)
设计若干个用例,执行测试,每个语句至少执行一次,并且使得程序中每个判定的每个条件的可能取值至少执行一次。
条件包括:
A1: T1 not A1: F1
B=0: T2 not B=0: F2
A=2: T3 not A=2: F3
x1: T4 not x1: F4
if (A1) and (B=0)
x=x/A;
if (A=2) or (X0)
x=x+1;
条件覆盖(2)
下面的两组测试用例都满足条件覆盖要求:
测试用例
通过路径
条件取值
覆盖分支
{(1,0,3), (1,0,4)}
abe(L3)
F1,T2,F3,T4
b,e
{(2,1,1),(2,1,2)}
abe(L3)
T1,F2,T3,F4
b,e
测试用例
通过路径
条件取值
覆盖分支
{(2,0,4), (2,0,3)}
L1
T1,T2,T3,T4
c,e
{(1,0,1), (1,0,1)}
L2
F1,T2,F3,F4
b,d
{(2,1,1),(2,1,2)}
L3
T1,F2,T3,F4
b,e
条件覆盖(3)
不足之处:
虽然可以保证每个条件都取不同的值,但是不能保证每个判定都取不同的值。
有时甚至不能满足分支覆盖的要求。比如前面的第一组用例。
使用判定-条件覆盖来弥补这个不足。
判定-条件覆盖(1)
判定-条件覆盖就是设计足够的测试用例,使得判定中每个条件的所有可能取值至少执行一次,同时每个判定的所有可能判定结果至少执行一次。
测试用例的例子:
测试用例
通过路径
条件取值
覆盖分支
{(2,0,4), (2,0,3)}
ace(L1
您可能关注的文档
- 31蜡烛的变化.pptx
- 31产业活动的区位条件和地域联系3.pptx
- 32PowerPoint的基本操作一(聂思莲3)20100302.pptx
- 32冷变形加工对金属组织与性能的影响.pptx
- 32新型的萃取技术.pptx
- 2红色第二章马克思主义中国化理论成果的精髓.pptx
- 31恐龙的灭绝课件二年级语文下册.pptx
- 32化学反应的吉布斯自由能变化及平衡常熟.pptx
- 32仓储企业人力资源管理.pptx
- 32节332节333节距离保护.pptx
- 液压机设计任务书技术要求.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及参考答案详解.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及完整答案详解一套.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及一套完整答案详解.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及一套参考答案详解.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及1套参考答案详解.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及1套完整答案详解.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库及参考答案详解1套.docx
- 2026年威海火炬高技术产业开发区直属学校引进急需紧缺人才备考题库参考答案详解.docx
- 2026年威海市青少年宫公开招聘事业单位工作人员备考题库附答案详解.docx
最近下载
- 一种甲醇柴油微乳化分散剂及其制备方法和应用.pdf VIP
- 高含水稳定柴油乳化液的制备工艺研究.docx VIP
- [PDF]IEC61850应用入门_何磊编著2012.06北京:中国电力出版社_P354 带索引书签目录高清版_13052952.pdf VIP
- 微乳化柴油制备工艺的研究.pdf VIP
- 道路破坏应急预案(3篇).docx VIP
- 个人年终述职报告怎么写1000字.docx VIP
- 超声技术赋能甲醇乳化柴油:制备工艺与性能深度剖析.docx VIP
- 微乳化柴油:制备工艺优化与燃烧性能的深度剖析.docx VIP
- Linux防火墙配置方案.docx VIP
- linux上命令基本操作文件剖析.pptx VIP
原创力文档


文档评论(0)