Scenario steps should follow the proper Given > When > Then flow. If not, the scenario may be testing several actions, that is a wrong BDD design.

Noncompliant Code Example

Scenario: Purchase a product
  Given I am a customer
  When I add a product to my cart
  Then I should see the product in my cart
  When I proceed to the order payment          # Noncompliant
  Then I should see the order total amount

Compliant Solution

Scenario: Add a product to my cart
  Given I am a customer
  When I add a product to my cart
  Then I should see the product in my cart

Scenario: Proceed to payment
  Given I am a customer
  And I have added a product to my cart
  When I proceed to payment
  Then I should see the order total amount