Visual Studio Extension Settings¶
To change the Visual Studio extension settings, edit the reqnroll.json config file. If you don’t have the reqnroll.json file you can add it by right clicking on the Reqnroll project -> Add -> New item… -> Add Reqnroll configuration file.

Note
The formatting behavior can also be controlled by an EditorConfig file.
The configuration file has a JSON schema, therefore you will see all available properties as you start typing.

Configuring the Visual Studio extension in the configuration file¶
The ide section of the reqnroll.json file configures all settings related to the Integrated Development Environment (IDE) for Reqnroll projects. This section is extensible and allows fine-tuning of your development experience with Reqnroll. For other sections of the configuration file, please check the Reqnroll Configuration Reference.
The following sections are available within the ide section:
Note
You must build your project for the changes in reqnroll.json to take effect.
Example ide Configuration¶
"ide": {
"editor": {
"showStepCompletionAfterStepKeywords": true,
"gherkinFormat": {
"indentFeatureChildren": false,
"indentSteps": true
}
},
"traceability": {
"tagLinks": [
{
"tagPattern": "issue:(?<id>\\d+)",
"urlTemplate": "https://github.com/org/repo/issues/{id}"
}
]
}
}
editor Section¶
Purpose: Controls editor behaviors such as feature file formatting and code completion.
Settings:
showStepCompletionAfterStepKeywords(boolean): Enables/disables step completions after keywords (Given,When, etc.). Default:true.gherkinFormat(object): Controls the formatting of Gherkin feature files.indentFeatureChildren(boolean): Indent children ofFeature(Background,Rule, etc.). Default:false.indentRuleChildren(boolean): Indent children ofRuleelements. Default:false.indentSteps(boolean): Indent steps in scenarios. Default:true.indentAndSteps(boolean): Extra indent for “And”/”But” steps. Default:false.indentDataTable(boolean): IndentDataTablearguments. Default:true.indentDocString(boolean): IndentDocStringarguments. Default:true.indentExamples(boolean): IndentExamplesblocks. Default:false.indentExamplesTable(boolean): IndentExamplestables. Default:true.tableCellPaddingSize(integer): Padding for table cells (spaces, default:1).tableCellRightAlignNumericContent(boolean): Specifies whether Table cells that contain digits should be right-aligned. Default:true.
Example¶
"ide": {
"editor": {
"showStepCompletionAfterStepKeywords": true,
"gherkinFormat": {
"indentFeatureChildren": false,
"indentSteps": true,
"indentAndSteps": false,
"tableCellPaddingSize": 1
}
}
}
traceability Section¶
Purpose: Enables traceability settings for scenarios, such as linking scenario tags to external issue trackers.
Settings:
tagLinks(array): Defines patterns for tags and the corresponding external URLs.Each entry:
tagPattern(string): Regex to match tag names (e.g.,"issue:(?<id>\\d+)").urlTemplate(string): URL template using captured regex groups (e.g.,"https://github.com/org/repo/issues/{id}").
Example¶
The following example configures the extension to turn @issue:1234 tags to clickable links to open the related GitHub issue.
"ide": {
"traceability": {
"tagLinks": [
{
"tagPattern": "issue:(?<id>\\d+)",
"urlTemplate": "https://github.com/org/repo/issues/{id}"
}
]
}
}
reqnroll Section¶
Note
Specifying this section is only required for special cases when Reqnroll is not configured via NuGet packages.
Purpose: Handles project-level settings related to Reqnroll itself.
Settings:
isReqnrollProject(boolean): Enables the project as a Reqnroll project. Default: (auto-detect).configFilePath(string): Path toApp.configorreqnroll.json. Default: (auto-detect).version(string): Specifies the Reqnroll version (e.g.,"2.3.1"). Default: (auto-detect).traits(array): List of traits (e.g.,"XUnitAdapter","MsBuildGeneration","DesignTimeFeatureFileGeneration"). Default: (detected from NuGet packages).
bindingDiscovery Section¶
Note
Specifying this section is only required for special cases when the built-in binding discovery does not work.
Purpose: Manages settings for discovering step bindings within the IDE.
Settings:
connectorPath(string): File path to custom binding connector. Can reference environment variables (e.g.,%ENV_VAR%). Relative paths use the default connector folder as base.