Synchronizing Scenario Outlines
Scenario Outlines can be used to specify business rules that can be represented with a table of input-output pairs. The following example shows a scenario outline for specifying the addition function of a calculator.
Scenario Outline: Add two numbers
Given I have entered <a> into the calculator
And I have entered <b> into the calculator
When I press add
Then the result should be <result> on the screen
Examples:
| description | a | b | result |
| classic | 50 | 70 | 120 |
| commutativity | 70 | 50 | 120 |
| zero | 0 | 42 | 42 |
This scenario outline represents three executable tests, one for each row of the Examples
table.
In Azure DevOps, parametrized test cases can be created for the similar problems. A Test Case automatically becomes parametrized, once you use a parameter (e.g. @myparam
) in the Test Case steps. The parameter values can be specified in a separate table, similarly to scenario outlines: one row in the parameter values table represents one test, called iteration.
SpecSync synchronizes scenario outlines automatically to parametrized test cases. Once the scenario outline above is synchronized, it produces a test case like this.

Special considerations for test-suite based execution
When the legacy test-suite based execution method with SpecFlow or Reqnroll, the test case has to be associated with a single not parametrized test method (normally multiple test methods or parametrized methods are generated for the Scenario Outlines). To be able to produce such a single test method, a SpecFlow or Reqnroll plugin has to be used that is provided by SpecSync. See more about this at the Support for Azure DevOps Test Plan / Test Suite based test execution page.
Last updated
Was this helpful?