【问题标题】:How to reuse a cucumber feature如何重用黄瓜功能
【发布时间】:2015-10-22 11:27:09
【问题描述】:
我有一个名为“A”的黄瓜功能,位于“C:\cucumber tests”
现在我想创建另一个名为“B”的黄瓜功能。
特征“B”的第一部分步骤将与特征“A”完全相同。我不想简单地将功能“A”中的所有步骤复制到功能“B”
无论如何在功能“B”中调用功能“A”吗?
我很感激。
【问题讨论】:
标签:
cucumber
cucumber-jvm
cucumberjs
【解决方案1】:
红宝石版本:
我不相信你可以调用整个场景,但你可以使用 steps 方法从一个步骤调用步骤。
Given /^(.*) is logged in$/ do |name|
steps %Q{
Given the user #{name} exists
Given I log in as #{name}
}
end
这至少可以让你重用你的 stepdef,但不能重用你的场景。
For more information see Cucumber Docs
【解决方案2】:
如果您愿意将功能放在同一个文件中,您可以使用后台为每个功能运行相同的步骤。
Background: Login the user
Given I have an admin account
And we have a user named "john"
And I am logged in
Scenario: Reset Password
When I reset the users password
Then the server sends an email to "john"
Scenario: Lock User
When I lock the account for "john"
Then "john" cannot log in