我有一个功能文件
Feature: Create Profile
Scenario: Create Profile
Given I want to create a profile
When I create a profile
Then I should be navigated to Home Page
Then sign out link should exist
所以上面的操作都可以,并断言它确实回到主页并且存在退出链接.
现在我有另一个功能文件.
Feature: Go to my account page
Scenario: Go to my account page
Given I want to go to my account page
When I go to my account page
Then I should be navigated to the my account page
在运行“当我转到我的帐户页面”步骤之前,用户应该“创建个人资料”.
所以我所做的就是我附上了
When I create a profile
Then I should be navigated to Home Page
Then sign out link should exist
之前当我进入我的帐户页面时.
但我发现我复制了“创建配置文件”功能/场景中的相同代码.
如何在“转到我的帐户页面”方案中运行整个“创建配置文件”功能/方案?
我正在使用带有Selenium和JUnit的cucumber-jvm.
最佳答案 你看到了背景DSL功能吗?它适用于你的情况,但可能不是你真正要求的.在这种情况下,您可以要求用户创建配置文件:
Feature: Create Profile
Background:
Given I create a profile
And I should be navigated to Home Page
And sign out link should exist
Scenario: Create Profile
# do nothing because all actions are in background
Scenario: Go to my account page
When I go to my account page
Then I should be navigated to the my account page
但是您必须将两个要素文件合并到一个要素文件中.
另外看看@Before和@After黄瓜注释 – 这样你就可以运行一些代码来初始化(或创建)你的测试帐户,如果以前的解决方案不适合你.