在 Cucumber 中,我如何在步骤定义类之间传递变量。我试图在 Scala 中实现。
环顾四周,我看到人们建议使用 Guice 或 Picocontainer 或任何其他 DI 框架。但是在 Scala 中还没有真正遇到过一个例子。
例如,对于下面的示例,如何使用 DI 传递变量?
提供者.scala,
class Provider extends ScalaDsl with EN with Matchers with WebBrowser {
......
When("""I click the Done button$""") {
val doneButton = getElement(By.id(providerConnectionButton))
doneButton.click()
}
Then("""a new object should be created successfully""") {
// Pass the provider ID created in this step to Consumer definition
}
}
消费者.scala,
class Consumer extends ScalaDsl with EN with Matchers with WebBrowser {
......
When("""^I navigate to Consumer page$""") { () =>
// providerId is the id from Provider above
webDriver.navigate().to(s"${configureUrl}${providerId}")
}
}