2

同じステップの 2 つのバリエーションを使用しようとしています。私は cucumber-jvm を使用した ATDD テストです。

その後、注文は数量制限を超えます

その後、注文は制限を通過します

これは、さまざまなシナリオで読みやすくなります。次のさまざまなバリエーションを試しました。

@Then(value = "^order passes (?: | quantity )limits$")
public void verifyCreditPassed(){ 
    //Assert stuff
}

誰でも助けることができますか?

ありがとう

4

2 に答える 2

6

^および$メタ文字を削除する必要がある場合、正規表現は次のようになります。

order passes (?:quantity |)limits

行を使用する場合^は単語で開始する必要があり、行を使用する場合は で終了する必要があるorderため、上記の正規表現は入力文字列内の任意の文に一致します。$limits

または次の正規表現を使用します。

^Then order passes (?:quantity )?limits$
于 2013-08-22T10:46:31.427 に答える
0

このオプションも考え出しました:

@Then(value = "^order passes(?: | quantity )limits$")
public void verifyCreditPassed(){ 

}
于 2013-08-22T10:48:19.507 に答える