質問

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?

役に立ちましたか?

解決 2

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.

他のヒント

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.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top