Cypress.io/Cucumber-给定/何时/然后的相同函数

2022-03-13 00:00:00 javascript cucumber cypress

我想知道是否有给出/何时/然后可以共享代码的方法,如果它做完全相同的事情。比方说(实际上没有使用这个,只是作为示例):

Given I have searched for {string}
When I search for {string}
Then I will search for {string}

每个步骤的代码都是完全相同的。除了(有时)BeforeEach/AfterEach挂钩之外,有没有办法允许代码共享? 提前感谢!


解决方案

您可以简单地使用defineStep实现通用步骤定义,如下所示:

import { defineStep } from 'cypress-cucumber-preprocessor/steps';

defineStep("I search for {string}", (searchString) => {
  // do something 
})

然后,您可以在功能文件中将上述步骤定义用作给定、WHEN或THEN步骤,就像您通常将其显式定义为其中之一时所做的那样:

Feature: Login
    Scenario Outline: Sample
        Given I search for "xyz"
        When I search for "xyz"
        Then I search for "xyz"

相关文章