判定表
在一个程序中,如果输入输出比较多,输入之间和输出之间相互制约的条件较多,在这种情况下应用决策表很合适,它可以很清楚地表达它们之间的各种复杂关系
决策表法简述:
决策表是把作为条件的所输入的各种组合值以及对应输出值都罗列出来而形成的表格。它能够将复杂的问题按照各种可能的情况全部列举出来,简明并可以避免遗漏。因此利用决策表能够设计除完整的测试用例集合。
决策表通常由以下4部分组成:
条件桩——列出问题的所有条件
条件项——针对条件桩给出的条件列出所有可能取值
动作桩——列出问题规定的可能采取的操作
动作项——指出在条件项的各组取值情况下应采取的动作
举例:
打印机是否能打印出来正确的内容有多个因素影响,包括驱动程序、纸张、墨粉等。(为了简化问题,不考虑中途断电、卡纸等因素的影响) 假定:优先警告缺纸,然后警告没有墨粉,最后警告驱动程序不对。
先考虑等价类怎么做?
决策表
打印机是否能打印出来正确的内容有很多个因素影响,保罗驱动程序、纸张、墨粉等。(为了简化问题,不考虑种土断电、卡纸等因素的影响)
假定:优先警告缺纸,然后警告没有墨粉,最后警告驱动程序不对
1)列出条件桩和动作桩
条件桩:a)驱动程序是否正确 b)是否有纸张 c)是否有墨粉
动作桩:a)打印内容 b)提示驱动程序不对 c)提示没有纸张 d)提示没有墨粉
决策表的构造及简述
1.列出所有的条件桩和动作桩
2.确定规则个数
3.填入条件项
4.填入动作项,得到初始决策表
5.简化决策表,合并相似规则
对于N个条件的决策表,相应有2^n规则(每个条件分别取真、假值),当n比较大时,决策表很庞大。实际使用决策表时,常常先将它简化。决策表的简化以合并相似规则为目标,即若表种有两条或两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。合并后的条件项用符号“-”表示,说明执行的动作与该条件的取值无关,称为无关条件
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具