我正在使用带有量角器的黄瓜。 在Cucumber中是否可以为同一方法提供多个注释?
例如:
this.Given(/^I log in as user '([^']*)' with password '([^']*)'$/
this.When(/^I log in as user '([^']*)' with password '([^']*)'$/, function(username, password)
{
}
答案 0 :(得分:1)
从Cucumbers的角度来看,Given
和Then
之间没有区别。不同的关键字只是为了增强.feature
文件的可读性。实施这些步骤时,您可以选择使用其中任何一个步骤。
就个人而言,我绝不会考虑使用相同方法的两个不同的注释。一个就足够了。它重要的地方在场景中,我将使用我需要的任何东西。
与此同时,我对你为什么用一个Given
和一个Then
步骤来描述你的系统感兴趣,但实际上它们是相同的。 Given
是准备被测系统的地方,Then
是断言预期结果发生的地方。令我感到惊讶的是,在你的情况下它们实际上是相同的执行。也许是有原因的,但此刻我觉得很奇怪。