I updated from Cucumber-JVM 2.4.0 to 3.0.2 in my pom.xml
and DataTables started throwing this exception:
io.cucumber.datatable.UndefinedDataTableTypeException: Can't convert
DataTable to List< jcucumberng.steps.pojos.Income >. Please register a
DataTableType with a TableEntryTransformer or TableRowTransformer for
class jcucumberng.steps.pojos.Income
I changed all my imports to
import io.cucumber.datatable.DataTable;
I did an mvn clean install
and compilation was successful but steps involving DataTables no longer work after the update.
Current code:
// Feature
When I Enter My Regular Income Sources
| name | amount | frequency |
| Salary | 25000 | every 2 weeks |
// Stepdef
@When("^I Enter My Regular Income Sources$")
public void I_Enter_My_Regular_Income_Sources(DataTable dataTable) throws Throwable {
List<Income> incomes = dataTable.asList(Income.class);
// More code
}
// Custom type
public class Income {
private String name = null;
private String amount = null;
private String frequency = null;
public Income(String name, String amount, String frequency) {
this.name = name;
this.amount = amount;
this.frequency = frequency;
}
// Getters and setters
}
Is there a new way to use the DataTables in Cucumber-JVM v3.x.x?
UPDATE:
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…