In a project we have different feature files. Each feature file start with keyword Feature: or its localised equivalent. A feature consist of list of scenarios which start with Scenario: keyword.
Feature and Scenario both can be tagged. Scenario further consist of Steps which start with keyword like Given, When, Then, But or And.
Example of Feature and Scenario:
@smoke Feature: As a Content Editor, I should be able to create Basic Page Content type Scenario: Create Basic Page with required fields Given I am on the homepage And I go to "/user" When I fill in the following: | edit-name | editor12 | | edit-pass | test1234 | And I press "edit-submit" Then I should see "Successfully Logged in!"
In above example @smoke is a tag and we have entered username and password using table. Each step mentioned above has step definition defined in FeatureContext.php file.