Fitnesse使用系列四
查询表、子查询表、有序查询表
创新互联于2013年创立,是专业互联网技术服务公司,拥有项目成都网站设计、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元吉利做网站,已为上家服务,为吉利各地企业和个人服务,联系电话:18980820575
表头还是要加上标记,这个没什么说的。构造参数列通常是为了提供查询条件(可省略)。fixture代码里面需要注意的是一定要有个无参数的query方法,返回值是List。这个List有点复杂,是三层List的一个集合,分别对应于表、行、字段。口头表述不很清楚,还是看下面的代码好了。返回的结果和页面上的数据进行比较。查询表适合对关系数据库的查询结果进行验证。
Query:qt.zjc.com.QueryTable | 123456 | ||
name | age | job | salary |
zjc | 99 | worker | 1000000 |
代码如下:
public class QueryTable { private int salary; private List table; public QueryTable(int s){ this.salary=s; } public List query(){ table=new ArrayList(); ArrayList row=new ArrayList(); ArrayList field1=new ArrayList(); ArrayList field2=new ArrayList (); ArrayList field3=new ArrayList (); ArrayList field4=new ArrayList (); field1.add("name"); field1.add("zjc"); row.add(field1); field2.add("age"); field2.add("99"); row.add(field2); field3.add("job"); field3.add("worker"); row.add(field3); field4.add("salary"); field4.add("1000000"); row.add(field4); table.add(row); return table; } }
可以看到,构造这个List结构相当繁琐。当然我这里只是个示例,实际中肯定是循环操作了。但即便如此,我认为也可以找到某些更简单的方式达到相同的验证目的,比如使用决策表。测试代码一定要尽可能的简单明了,不要包含复杂的操作和业务逻辑,否则测出问题还要排查是业务代码的问题还是测试代码的问题,那就得不偿失了,这是我的观点。所以个人觉得查询表的应用范围并不广泛,也就一并把子查询表和有序查询表写一起了。
子查询表、有序查询表格式和查询表一模一样。按文档说法子查询表是要包含确定存在的结果,我验证没发现任何区别;有序查询表就是结果按顺序比较,内容都对、顺序不对也认为是测试失败。
网页名称:Fitnesse使用系列四
文章路径:http://cdiso.cn/article/posohp.html