【发布时间】:2017-03-01 11:44:58
【问题描述】:
在 cucumber 中,我可以将表格解析为对象列表,例如:
public class Model {
public String a;
public String b;
public String c;
}
我的功能文件:
Scenario: Example
Given examples
|a |b |c |
|lsj |fjsldkf|fljs |
|fjsdfj|jfkskjl|fsjls|
我的步类:
@Given("$examples$")
public void examples(List<Model> list){}
当我的模型对象有其他对象的引用时,我该怎么做,例如:
public class SubModel{
public String subA;
public String subB;
}
public class Model {
public String a;
public String b;
public String c;
public SubModel subModel1;
public SubModel subModel2;
}
在这种情况下,如何编写表格以便解析为模型列表?
【问题讨论】:
-
您需要手动创建模型对象。 Cucumber 无法处理包含其他类的类的创建。由于 cucumber 使用反射来填充字段,而不是调用构造函数,您将无法创建子模型对象。我会创建一个类,它将所有必需的数据接收到字符串字段中,并具有一个返回正确创建的模型对象的方法。
标签: cucumber bdd serenity-bdd cucumber-serenity