OpenTAP 9.9 addresses the following issues.
Welcome to the August 2020 release of OpenTAP, version 9.9. This release includes several minor features and usability improvements. Some of the key highlights include:
Added globbing attribute to the package reference – this allows you to control which assemblies are referenced
Simplified package dependency detection – package dependency is only included if the package assembly and another package share a DLL that is not in the Dependencies folder
Improved the way assembly version conflicts are handled between package DLLs – when two plugin DLLs both reference the same assembly but with different versions we now load both versions
Added tags support in
TapPackage‘s
metadata – this will enable filtering packages based on tagsImproved performance for the execution of quick test plans
Added globbing attribute to the package reference
When you specify an OpenTAP package to be referenced by your project you now have the option to control which assemblies are referenced. You can do this with the IncludeAssemblies
and ExcludeAssemblies
attributes. For example:
These attributes are optional and if they are not specified they default to **
in the case of the IncludeAssemblies
attribute and Dependencies/**
in the case of ExcludeAssemblies
.
To learn more about this feature check out our documentation.
Simplified package dependency detection
This improvement ensures to not include unnecessary package dependencies if the package assembly depends on any DLL that another installed package includes. Previously, an installed package was included if any assembly in the package we are creating depended on any assembly from the installed package. With this change we only included a package dependency if the package assembly and another package share a DLL that is not in the Dependencies subfolder of the installed package. This change was made on the assumption that anything in the Dependencies subfolder is generally available 3rd party library and does not depend on any OpenTAP package to contain it.
Improved the way assembly version conflicts are handled between package DLLs
Previously if there was an assembly version conflict between the DLLs of two packages only the newest version was loaded assuming that the two versions are compatible. This changed in 9.9 and instead we now load both versions. This way both plugin packages can ship their own version of the referenced assembly and we can ensures that each package is more independent from what other packages might contain. As a developer, if you are working on dependent packages, you now have to make sure that the version of the referenced assembly in your package is the same as its version in the package that your package depends on. We have added warnings and errors to remind you of this.
Added tags support in TapPackage
‘s metadata
In the package configuration file you can now specify tags. Tags are a list of keywords that describe the package. They can be separated by a space or by comma. For example:
Providing tags will allow filtering package based on these in user interfaces.
Improved performance for the execution of quick test plans
We implemented a series of improvements in order to enhance the execution speed of quick test plans.