Fitnesse使用系列四

查询表、子查询表、有序查询表

表头还是要加上标记,这个没什么说的。构造参数列通常是为了提供查询条件(可省略)。fixture代码里面需要注意的是一定要有个无参数的query方法,返回值是List。这个List有点复杂,是三层List的一个集合,分别对应于表、行、字段。口头表述不很清楚,还是看下面的代码好了。返回的结果和页面上的数据进行比较。查询表适合对关系数据库的查询结果进行验证。

Query:qt.zjc.com.QueryTable123456
nameagejobsalary
zjc99worker1000000
代码如下:

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<String>();
		ArrayList field2=new ArrayList<String>();
		ArrayList field3=new ArrayList<String>();
		ArrayList field4=new ArrayList<String>();
		
		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结构相当繁琐。当然我这里只是个示例,实际中肯定是循环操作了。但即便如此,我认为也可以找到某些更简单的方式达到相同的验证目的,比如使用决策表。测试代码一定要尽可能的简单明了,不要包含复杂的操作和业务逻辑,否则测出问题还要排查是业务代码的问题还是测试代码的问题,那就得不偿失了,这是我的观点。所以个人觉得查询表的应用范围并不广泛,也就一并把子查询表和有序查询表写一起了。

子查询表、有序查询表格式和查询表一模一样。按文档说法子查询表是要包含确定存在的结果,我验证没发现任何区别;有序查询表就是结果按顺序比较,内容都对、顺序不对也认为是测试失败。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值