pep*_*uch 9 java cucumber cucumber-jvm
我想在黄瓜中创建自定义数据表变换器.这是我的功能的样子:
Given board
| o | _ | _ |
| o | _ | _ |
| o | _ | _ |
Run Code Online (Sandbox Code Playgroud)
我想把它放到自定义对象中.让我们说它看起来像这样:
class Board {
private List<List<String>> board;
public Board(List<List<String>> board) {
this.board = board;
}
}
Run Code Online (Sandbox Code Playgroud)
我的步骤定义应如下所示:
@Given("^board$")
public void board(Board board) throws Throwable {
// todo
}
Run Code Online (Sandbox Code Playgroud)
步骤定义适用于DataTable类和List<List<String>>
@Given("^board$")
public void board(DataTable board) throws Throwable {
// this works fine
}
Run Code Online (Sandbox Code Playgroud)
这也很好
@Given("^board$")
public void board(List<List<String>> board) throws Throwable {
// this also works fine
}
Run Code Online (Sandbox Code Playgroud)
我试图在互联网上找到解决方案但没有任何成功.我也尝试创建,Transformer但是,正如我所见,它只适用于字符串(我想在输入中使用Datatable或List>):
class BoardTransformer extends Transformer<Board> {
@Override
public Board transform(String value) {
// TODO Auto-generated method stub
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
如果你可以一起去
@Given("^board$")
public void board(List<List<String>> board) throws Throwable {
...
Run Code Online (Sandbox Code Playgroud)
为什么不立即创建 Board 对象
Board board2 = new Board(board);
Run Code Online (Sandbox Code Playgroud)
看来你不需要变压器。
| 归档时间: |
|
| 查看次数: |
2537 次 |
| 最近记录: |