v0.3.0
Pre-release
Pre-release
General
0.3.0 is a big update, with major code changes.
If you have any problems that are specific to this release, then please read through these release notes (and the troubleshooting guide in the readme). If that does not resolve your issue, then use the uninstall dropdown in vscode to install an older version of the extension and raise an issue on github.
What's Changed
Breaking changes
- environment variables are now passed through to behave (bugfix). the envVarOverrides setting can be used for overrides (or just adding a variable).
- settings.json:
- envVarList and fastSkipList are deprecated, please use the replacement settings envVarOverrides and fastSkipTags. note that the new settings are in json object/array format, not csv format. You can use both settings as your team migrates, but the new setting will override the old one, so they should have the same values. See examples below:
"behave-vsc.envVarList": "'myvar1':'val1', 'myvar2':'val2'
= becomes =>"behave-vsc.envVarOverrides": { "myvar1": "val1", 'myvar2':'val2' }
"behave-vsc.fastSkipList": "@skip, @skip_also"
= becomes =>"behave-vsc.fastSkipTags": [ "@skip", "@skip_also" ]
- featuresPath setting must now be specified if it is not the default (
./features
) path in the workspace folder - runAllAsOne setting will no longer default to true if runParallel is true (bugfix)
- envVarList and fastSkipList are deprecated, please use the replacement settings envVarOverrides and fastSkipTags. note that the new settings are in json object/array format, not csv format. You can use both settings as your team migrates, but the new setting will override the old one, so they should have the same values. See examples below:
New functionality
- added support for multi-root workspaces
- test result parsing is now done via junit, not json output. this enables plain output to appear in the output window, improves test result update speed in the UI, and makes parsing results more reliable.
- nested feature folders now appear as test tree nodes, so you can select/run a sub folder at any level
- environment variable overrides from envVarOverrides are now output in the behave command in a format such that they can be copy/pasted and run
- added warning output for settings.json flags for combinations where a flag may sometimes become inactive (and added setting 'showSettingsWarnings' (default true) that can be set false to turn these warnings off)
- added setting 'multiRootRunWorkspacesInParallel' to control whether multi-root workspaces run in parallel (default true)
- added setting 'xRay' to enable/disable extension diagnostic logs and error stack traces (default false)
Fixes
- test tree should no longer rebuild when vscode's new file history functionality adds/deletes .tmp files
- go to step definition for steps where the e.g.
@when(...)
spans multiple lines should now work in simple cases - git reverted file no longer opens in read-only mode when go to step definition is clicked
- runAllAsOne will not default to true if runParallel is true
- environment variables are now passed through to behave so the extension works works as per the command line
Other
- minor changes to 'go to step definition' parsing/matching
- extension errors/warnings are always window notifications now (still logged in output)
- added tests for basic go to step definition functionality
- added multiroot tests
- check that user has not set an invalid features path, and output full path in output window
- documentation updates to readme/contributing/settings docs
- extension developer QoL - added more diagnostic logging
- various code refactorings
- dropped the world "simple" from the extension readme description 😦 (multi-root workspace support has added complexity)
Tested with
- behave 1.2.6
- Python 3.9.7
- Visual Studio Code 1.67.2
- ms-python.python extension v2022.6.2
- Ubuntu 22.04 / Windows 10