Reputation: 2846
I have a feature file with 3 scenarios for doing some BDD tests on a C# project. Each scenario is demonstrated using a large examples table (about 40 rows). Example tables are the same. Here how the feature file looks like:
Scenario Outline: scenario1
<stmt set 1>
Examples:
<LargeTable>
Scenario Outline: scenario2
<stmt set 2>
Examples:
<LargeTable>
Scenario Outline: scenario3
<stmt set 3>
Examples:
<LargeTable>
I do not like repeating the same examples for each scenario. Is there a way to write the example table once and make scenarios reference it, i.e. something like this:
Scenario Outline: scenario1
<stmt set 1>
Examples:
<ref LargeTable>
Scenario Outline: scenario2
<stmt set 2>
Examples:
<ref LargeTable>
Scenario Outline: scenario3
<stmt set 3>
Examples:
<ref LargeTable>
LargeTable:
<bla>
Is it possible to do so?
Upvotes: 4
Views: 3077
Reputation: 2805
No, SpecFlow does not support this.
See http://dannorth.net/2008/06/30/let-your-examples-flow/ for some clues as to why the feature is not implemented in BDD frameworks.
Upvotes: 4
Reputation: 17657
You can use SpecFlow's "background" keyword.
Background:
Given my table looks like
| .... | .... |
Put this before your scenarios. You can then include the table as you would for any other Given, and it will be available for every scenario in the file.
Upvotes: 1