Skip to main content

Cucumber Skip Scenario

Note: Below code we will execute using Cucumber Runner class, if you are executing command line your can refer article Cucumber Java Command Line: Ignore or Skip Scenario or Feature

You can ignore Cucumber Tests using tags. not word is used along with tags to ignore the test.

This works both for the Scenario as well as the Feature. You can skip a scenario, set of scenarios, or all scenarios in a feature file. You can also use this in conjunction with AND or OR.

One way of ignoring tags is by mentioning only tags that you want to run in the tags property of CucumberOptions but this is not best practice in a few situations. In that case, we skip tags using not keyword.

Consider below feature file

Feature: Registration, Login and MyAccount
 
  Background: 
 	  Given I am on the home page
    And I follow "Sign in"	  
 	   
  @sanity
  Scenario: Test 1
    When I fill "email address textbox" with "goswami.tarun77@gmail.com"
    Then I fill "password textbox" with "Test1234"  
   
 @regression
  Scenario: Test 2
    When I fill "registration email textbox" with "goswami.tarun77+1@gmail.com"
    Then I click "create an account button"
    
  @sanity @regression
  Scenario: Test 3
    When I fill "email address textbox" with "goswami.tarun77@gmail.com"
    Then I fill "password textbox" with "Test1234"
    And I click on "Logout"      
    
   @smoke
  Scenario: Test 4
    When I fill "email address textbox" with "goswami.tarun77@gmail.com"

Examples: Cucumber Skip Ignore Scenarios

Example #1: To execute all scenarios ignoring one tag

To execute all scenarios except @smoke.

tags = ("not @smoke")

Three Scenarios will be executed except the scenario/test #4.

cucumber skip scenario programmatically

Example #2: Execute Scenario which are tagged with one and not tagged with another

Execute Scenario which are tagged with @regression, not @sanity. This will execute scenario/Test #2.

tags = ("@regression and not @sanity")

cucumber skip scenario

Example #3: Execute Scenario which are tagged with one and not tagged with another

Below Code will execute scenario/Test #2 and #3.

tags = ("@regression and not @smoke")

cucumber ignore scenario

Example #4: Ignore more than one tag

Execute Scenario that are neither tagged with @regression and nor tagged with @sanity. This will only execute scenario/test #4.

tags = ("not @regression and not @sanity")

how to skip scenario in cucumber

Video Tutorial: Cucumber Ignore Scenario

Submitted by tgoswami on August 30, 2020

Tarun has 11+ years of experience in Quality Assurance in different domains like Banking, E-commerce, Health and Education.

About

At ProgramsBuzz, you can learn, share and grow with millions of techie around the world from different domain like Data Science, Software Development, QA and Digital Marketing. You can ask doubt and get the answer for your queries from our experts.