문제

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