求知 文章 文库 Lib 视频 iPerson 课程 认证 咨询 工具 讲座 Modeler   Code  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 
目录
软件测试
1.教程
2. 软件测试原则
3. 软件开发生命周期(SDLC)
4. 软件测试命周期(STLC)
5. 软件测试的类型
6. 测试成熟度模型
7. 测试级别
SDLC 模型
1.瀑布模型
2.螺旋模型
3.混合模型
4.原型模型
5. V模型/V和V模型/验证和验证模型
测试的类型
1.手动测试
2.自动化测试
手册的类型
1.白盒测试
2.黑盒测试
3.灰盒测试
白盒技术
1.数据流测试
2.控制流测试
3.分支覆盖测试
4.语句覆盖率测试
5.决策覆盖率测试
黑盒技术
1.决策表
2.全对测试
3.黑盒测试中的因果图
4.状态转换技术
5.用例技术
黑盒的类型
1.功能测试
2.非功能性测试
功能类型
1.单元测试
2.集成测试
3.系统测试
非功能性的类型
1.性能测试
2.易用性测试
3.兼容性测试
测试用例开发
1.测试文档
2.测试场景
3.测试用例
测试技术
1.错误猜测技术
2.等效分区技术
3.边界值分析
测试管理
1.测试计划
2.测试用例审查过程
3.需求可追溯性矩阵
缺陷跟踪
1.软件测试中的错误
2.Bug生命周期
3.测试中bug的严重性和优先级
4.测试环境
5.缺陷管理过程
其他类型的测试
1.回归测试
2.冒烟测试
3.健全性测试
4.静态测试
5.动态测试
6.负载测试
7.压力测试
8.恢复测试
9.探索性测试
10.可视化测试
11.验收测试
12.Alpha 测试
13.Beta 测试
14.数据库测试
15.主机测试
16.Adhoc测试
17.全球化测试
18.变异测试
19.安全测试
20.可访问性测试
21.结构测试
22.批量测试
23.可伸缩性测试
24.稳定性测试
25.峰值测试
26.负面测试
27.正面测试
28.耐久性测试
29.可靠性测试
30.Monkey测试
31.敏捷测试
32.组件测试
33.GUI测试
34.测试策略
软件测试工具
1.软件测试工具
2.测试管理工具
3.缺陷/Bug跟踪工具
4.自动化测试工具
5.性能测试工具
6.跨浏览器测试工具
7.集成测试工具
8.单元测试工具
9.移动测试工具
10.GUI测试工具
11.安全测试工具
12.渗透测试工具
差异
1.自动化测试与手动测试
2.负载测试与压力测试
3.冒烟测试和健全性测试之间的差异
4.系统测试和验收测试之间的差异
5.质量保证与质量控制
6.静态测试与动态测试
7.验证和确认测试
8.Alpha 测试和 Beta 测试
9.黑盒测试与白盒测试与灰盒测试
10.全球化测试和本地化测试之间的区别
11.测试用例与测试场景
12.测试计划 VS.测试策略
13.边界值分析和等价划分之间的差异
14.SDLC VS.STLC
15.Bug, Defect, Error, Fault 和 Failure之间的区别
16.测试和调试之间的区别
17.前端测试 VS.后端测试
18.HLD和LLD的区别
19.BRS vs SRS
20.正面测试和负面测试之间的区别
21.自上而下和自下而上的集成测试之间的区别
22.用例和测试用例之间的区别
23.Monkey 测试 VS Gorilla 测试
24.Stubs和Drivers之间的区别
25.组件测试和单元测试之间的区别
26.软件测试和嵌入式测试之间的区别
27.GUI 测试和可用性测试之间的差异
28.SDET和Tester的区别
29.桌面应用程序测试、客户端-服务器应用程序测试和 Web 应用程序测试之间的区别
30.主动测试
31.什么是API
32.自动化测试
 
 
目录
决策覆盖率测试
来源:Javatpoint     翻译:Linda (火龙果软件)
628 次浏览
6次  

决策覆盖技术属于白盒测试,它为布尔值提供决策覆盖率。此技术报告布尔表达式的真假结果。每当语句中存在两个或多个结果的可能性时,例如 do while 语句、if 语句和 case 语句(控制流语句),它被视为决策点,因为有两个结果是真或假。

决策覆盖率通过使用控制流图或图表涵盖代码的每个布尔条件的所有可能结果。

通常,决策点有两个决策值,一个为真,另一个为假,这就是为什么大多数时候结果总数为两个。决策覆盖率的百分比可以通过将行使结果的数量除以结果总数并乘以 100 来找到。

在这种技术中,很难获得100%的覆盖率,因为有时表达式会变得复杂。因此,有几种不同的方法来报告决策覆盖率。所有这些方法都涵盖了最重要的组合,并且与决策覆盖率非常相似。这些方法的好处是增强了控制流的灵敏度。

我们可以找到决策覆盖率的数量,如下所示。

让我们通过一个例子来理解它。

考虑应用于决策覆盖技术的代码:

Test (int a)
{
If(a>4)
a=a*3
Print (a)
}

 

场景 1:

a 的值为 7 (a=7)

Test (int a=7)
{ if (a>4)
a=a*3
print (a)
}

 

以黄色突出显示的代码是执行代码。如果检查条件 (a>4),则此代码的结果为“True”。

当 a 的值为 7 时控制流图。

决策覆盖率百分比的计算:

Decision Coverage = ½*100 (Only "True" is exercised)
=100/2
= 50
Decision Coverage is 50%

 

 

场景 2:

a 的值为 3 (a=3)

Test (int a=3)
{ if (a>4)
a=a*3
print (a)
}

 

黄色突出显示的代码将被执行。此代码的结果是假。如果选中条件 (A>4)。

当 a 的值为 3 时控制流图

决策覆盖率百分比的计算:

= ½*100 (Only "False" is exercised) <br>
=100/2
= 50
Decision Coverage = 50%

 

决策覆盖率结果表:

 


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



628 次浏览
6次