Fitnesse 可以在table 中支持对象作为参数传输,可以将返回的对象存储在一个symbol变量中,然后将这个symbol作为入参传递给其他方法
你可以存储一个object 对象在slim symbol里面,然后利用这个symbol作为方法的参数或者构造函数的参数。
在这里有一个TestObject(String name,int age,String gender)对象,并且有对该对象的一些属性setter/getter,我们来看一下如何通过fitnesse完成下面对象参数的传递和测试。
1.TestFixtures
public class TestObject {
private String name;
private int age;
private String gender;
public TestObject(String name,int age, String gender){
this.name = name;
this.age = age;
this.gender = gender;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public TestObject getTestObject(){
return new TestObject(this.name,this.age,this.gender);
}
public String printTestObject(TestObject object){
return object.getName()+object.getGender()+object.getAge();
}
}
2. WikiTable
执行结果如下所示
我们在这个例子中构建了一个TestObject对象,然后在printTestObject这个方法中用该对象将它本身的属性打印出来,来完成我们的测试,这在接口测试中是非常有用的,因为我们的ws接口,会有很复杂的request对象或者中间对象,有了这个功能,我们就不许自己去构建每一个对象,可以方便使用这个功能,Fitnesse团队真的是造福人类。