Fitnesse使用系列三
2014-09-20 07:17
141 查看
动态决策表
动态决策表是新出的,去年初的版本里还没有这个。看了一下文档和示例,大意是作为普通决策表的一个辅助手段。是为不容易匹配方法名称而推出的。但如果只有一两个参数,再怎么着也不至于找不到名称。所以我认为动态表主要是为了给那些有大量输入参数的情况设计的。像UserGuide示例中的表格,有6个输入,如果按普通决策表的话至少要写6个setXxx方法。如果更多,代码也就更繁琐了。
动态决策表把所有输入都放到一个set方法里(同普通决策表一样,凡不是以?结尾的都认为是输入);所有输出(以?结尾的)放到一个get方法里,举个例子:
ddt:是必须的,动态决策表的标志,对应代码中:set方法就规定成了固定格式——两个参数,第一个参数是String类型,表示列名称,第二个参数是值get方法也是固定格式——一个参数:列名称输入方法统一成一个,输出方法也统一成一个,那么如果需要区分,只能我们自己在代码里做判断了。如以下示例:
不怕麻烦的话,动态决策表总是可以找到一个普通决策表的写法的,所以算是普通决策表的一种特例。
动态决策表是新出的,去年初的版本里还没有这个。看了一下文档和示例,大意是作为普通决策表的一个辅助手段。是为不容易匹配方法名称而推出的。但如果只有一两个参数,再怎么着也不至于找不到名称。所以我认为动态表主要是为了给那些有大量输入参数的情况设计的。像UserGuide示例中的表格,有6个输入,如果按普通决策表的话至少要写6个setXxx方法。如果更多,代码也就更繁琐了。
动态决策表把所有输入都放到一个set方法里(同普通决策表一样,凡不是以?结尾的都认为是输入);所有输出(以?结尾的)放到一个get方法里,举个例子:
ddt:ddt.zjc.com.DynamicTable | ||||
a | b | c | return? | exception? |
1 | 3 | 9 | false | No Exception |
0 | 1 | 8 | false | No Exception |
2 | 6 | 1 | false | No Exception |
package ddt.zjc.com; public class DynamicTable { private int num; public void set(String name,int a){ if(name.equals("b")){ this.num=a; } } public String get(String s){ if(s.equals("exception")){ return "No Exception"; }else { if (num==1) return "true"; else return "false"; } } }在set方法中我做了如下判断,只有当列名为“b”的时候才做赋值——这也就意味着a、c列其实完全不起作用;get方法也做了一下判断,以区分return列、exception列的输出内容。执行即可看到结果。
不怕麻烦的话,动态决策表总是可以找到一个普通决策表的写法的,所以算是普通决策表的一种特例。
相关文章推荐
- Fitnesse使用系列二
- Fitnesse使用系列三
- Fitnesse使用系列一
- Fitnesse使用系列四
- Fitnesse使用系列六
- Fitnesse使用系列六
- Fitnesse使用系列八
- Fitnesse使用系列二
- Fitnesse使用系列五
- Fitnesse使用系列七
- Fitnesse使用系列五
- Fitnesse使用系列八
- Fitnesse使用系列一
- Fitnesse使用系列四
- Fitnesse使用系列二
- Fitnesse使用系列七
- ASP.NET中使用TreeView控件[系列]
- 如何使用Lua扩展C/C++应用系列3-转自bbs.luachina.net
- 构造系列和位拷贝使用注意
- 使用JDOM操作XML系列----从数据库中读取记录集到层叠式XML文