java - 如何将 cucumber.api.Datatable 转换为数据表中超过 2 col 的 List<MyClass>

标签 java cucumber-jvm

小 cucumber 声明是:

And Instruments,Shareprice,Quantities to be added are
|name    |sal   |address|
|xyz     |100   |Greek  |
|abc     |200   |Italy  |   

步骤定义是:

@Given("My emp details are $")
public void my_emp_details_are(DataTable arg1) throws Throwable {
    List<EMP> lstemp= arg1.asList(EMP.class);
}

生成异常: cucumber.runtime.CucumberException:没有这样的字段数据结构.EMP.emps

EMP 是具有 3 个字段的类:

嘿,我是 Java 新手,我看过 asList() 文档,但我不明白 公共(public)列表asList(类itemType)

类型参数: T - 列表项的类型 参数: itemType - 列表项的类型

最佳答案

作为替代方案,您可以获取一个 List 作为输入参数,而无需进一步转换。

@Given("My emp details are $") 
public void my_emp_details_are(List<EMP> lstemp) throws Throwable {}

如果您的 EMP 有 3 个字段(使用 setter 方法)名称、sal 和地址

关于java - 如何将 cucumber.api.Datatable 转换为数据表中超过 2 col 的 List<MyClass>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29412203/

相关文章:

Maven-surefire 插件不包括并行测试

java - 从命令行在 Maven 中设置 cucumber-jvm 选项

gradle - 无法使用 gradle 在 intellij 中以 Debug模式运行 Cucumber 功能

JavaFx 程序应用程序启动方法中出现异常,使用多个布局构建我的程序 |网格 Pane 和边框 Pane

java - 将 JText 区域一分为二

java - 如何使用 jgoodies 表单最大化组件高度

java - Wicket:获取标签属性

gradle - Gradle Groovy Cucumber插件以检查是否已执行所有步骤

json - 如何在 cucumber 特征文件中表示嵌套的 json 对象

java - 为什么 apache hadoop 配置模块忽略 CDATA?