Cucumber テストではGiven
、When
と表現される機能Then
は、通常、3 つの個別のメソッドとして実装されます。これらのメソッドは多くの場合、値を共有する必要があり、可変変数がそれを行う方法のようです。
次の簡単な例を見てください。
特徴:
Given the digit 2
When it is multiplied by 3
Then the result is 6
そしてキュウリのメソッド:
class CucumberRunner extends ScalaDsl with EN with ShouldMatchers {
var digitUnderTest: Int = -1
Given("""^the digit (\d)$""") { digit: Int =>
digitUnderTest = digit
}
When("""^it is multiplied by 3$""") {
digitUnderTest = digitUnderTest * 3
}
Then("""^the result is (\d)$""") { result: Int =>
digitUnderTest should equal (result)
}
}
おそらく、Scala テストまたは Scala の Cucumber-jvm に組み込まれている方法でdigitUnderTest
、可変変数として表現できないようにする方法はありますか?