我想写一个jBehave步骤如下;
@When("I perform <someAction> on $panel")
所以我可以采取像
这样的步骤i. When I perform Action1 on Panel1
ii. When I perform Action2 on Panel2
现在您可以看到,此步骤混合了占位符
1. someAction which actually comes via meta
2. $panel which is taken from the step text in the story
但这不起作用,我得到NullPointerException
如果我写
,它会起作用@When("I perform <someAction> on Panel1")
即。我不能在同一步骤中使用2个占位符。
但由于这是一个通用的步骤,我不想硬编码任何值。
答案 0 :(得分:0)
是的,你可以
@When("I perform <someAction> on *panel*")
public void perform(@Named("panel") String panelId){
}
从现在起,我建议按名称识别所有元素,使用jemmy你可以使用new NameComponentChooser(panelId)
答案 1 :(得分:0)
请在两个参数前使用$符号。然后将处理示例参数以及normal参数。
@When("I perform $action on $panel")
public void performAction(String action, String panel){
}