所以我需要制作一个决策表来测试一些代码。该代码简单明了,但需要两个用户输入来确定两个进程变量。这就是为什么我需要让它不仅仅是一个二进制(真/假)表。
系统会提示用户输入总收入,这将决定用户属于哪个等级。然后提示用户输入受抚养人的金额,这将决定最终的税。根据收入等级,然后将设置 switch 语句 税收 = 收入 * [一定百分比]。此后,受抚养人的数量将决定多少百分比的税款将被免除。
基本上我需要知道的是如何设置我的条件、操作和规则。
Here is an example of decision table but this one is binary (true/false)
我在代码中使用 Java,但这并不完全相关。我具体需要的是决定我的条件应该是什么,是单独的收入还是收入和家属的组合等。我不需要写代码,只需要为它写测试表。
如果有人可以帮助告知我应该做什么或应该去哪里看,我们将不胜感激。如果需要,我愿意提供更多信息!
谢谢!
最佳答案
如果您了解常规(二元)决策表是什么,那么您也可以轻松获得扩展表 - 区别仅在于条件。
扩展决策表中的条件可以有两个以上的值。例如,在您的情况下,您有两个条件:
- Tax Bracket 的值(例如):[0, 9275]、[9276, 37650]、[37651, 91150] 等。
- 受抚养人人数,值为:0、1、2、3 等(最大值是多少?)
对于Actions,我会选择税率和扣除额 - 它们取决于等级和相应的受抚养人人数。
规则(=表中的列)连接条件和操作 - 对于条件值的所有可能组合,您有一个要执行的操作列表。在您的情况下,这些操作将只是两个数字,您将在税收公式中使用它们。
(坦率地说,我完全不明白为什么在这种情况下需要决策表......我认为,带有参数的税收公式,取决于收入,就足够了)
关于unit-testing - 如何制作用于测试的扩展入口决策表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43081841/