私は2つの似たようなステップを持っていますが、それでも十分に異なっています(私は願っています):
@When("I send $method '$url'")
public void sendMethodURL(
@Named("method") final String method,
@Named("url") final String url)
{
// stuff
}
@When("I send $method '$url' with JSON '$body'")
public void sendMethodURLBody(
@Named("method") final String method,
@Named("url") final String url,
@Named("body") final String inputJSON)
{
// stuff
}
ただし、私の話では、次のことがあります。
When I send POST '/blah/foo/bar' with JSON '["some", "json"]'
それでも、sendMethodURL
where method
is"POST '/blah/foo/bar' with JSON"
と url is を呼び出してい"[\"some\", \"json\"]"
ます。明らかに、代わりに呼び出したいと思いsendMethodURLBody
ます。
ここで何が間違っていますか?JBehave を取得して 2 つのステップを区別するにはどうすればよいですか?
編集: RegexStepMatcher が最初の @When に一致することを認識しています (これはsendMethodURL
) が一致することがわかりました...しかし、文法をそのままにして、2 つを区別して、両方のステップに一致しないようにするにはどうすればよいですか? メソッドの順序は機能しているように見えますが、壊れにくい方法があるはずです。