Skip to main content

Doc Strings in Cucumber

Docstrings allow you to specify a larger amount of text that could not fit on a single line. It parses big data as one piece. 

This is a helpful solution when we have plenty of text to enter in multiple lines. For example, if you need to represent the exact content of an email or contact us, you could use Doc String.

Doc Strings are also suitable for passing a larger part of the text to a step definition. 

Doc String can also be used with Scenario Outline. DocString should be written within pair of triple quotes (""") or using three backticks (```). 

Cucumber docstring Example

Demo Link: http://autopract.com/selenium/form4/

Doc Strings in Cucumber

Below is the example of Doc String to fill in above form:

@doc
Scenario: Test Doc String
    Given I follow url "http://autopract.com/selenium/form4/"
    When I fill in your message with 
    """
    Hello,

    How are you! This text will be entered 
    in the same format.

    Cheers,
    Tarun
    """

Note: The indentation inside the triple quotes is essential. Each line of the Doc String will be displayed according to the opening """ indentation.

Below are the step definitions

@Given("I follow url {string}")
public void i_follow_link(String string) {
    driver.get(string);
}

@When("I fill in your message with")
public void i_fill_in(String docString) {
    driver.findElement(By.cssSelector("#Message")).sendKeys(docString);	
}

Video Tutorial: Cucumber Doc Strings

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.