MLTE 2.0.0
Finishes first version of MLTE 2.0. This includes multiple changes and improvements. Main features include:
- Package name in PyPI renamed from "mlte-python" to the simpler "mlte".
- Added ids to Quality Attribute Scenarios in NegotiationCard, to better track them as requirements through testing.
- Restructured Specs into TestSuites, containing explicit TestCases, which now do not contain Properties, but link to Quality Attribute Scenarios from the NegotiationCard.
- Removed Conditions, replacing them by Validators, which work similar to them but are more granular, and can be created without the extension of Evidence types. TestCases have explicit validators associated to them.
- TestCases can have optional Measurements associated to them, which, if used, allows for easy re-running of all tests by just passing inputs and expected outputs to a TestSuite method.
- A new CustomList store was created, to store multiple, potentially parent-child linked lists, that in future updates will be used to store user-customized content.
- Class-based Properties were removed, now replaced by user-customizable Quality Attribute entries in CustomList store. Quality Attributes are grouped in Quality Attribute Categories, also stored in same store. MLTE comes with some default sets for both, which will be updated in future updates, and will be also user-customizable in future updates.
- Added support for Python 3.12.
- ValidatedSpec was renamed into TestResults, and Values into Evidence.
- String Evidence type was added to built-in Evidence types (used to be an example in a demo).
- UI and DB dependencies were moved to be optional, so people using the library only may choose not to install them.
- Runtime dependencies were relaxed to allow for easier install of mlte in different environments.
- Updated documentation, both for new changes, but also to better consolidate and clarify existing docs.
- Improved readme, including more basic critical info copied over from docs.
- Several minor updates to demos for consistency.
- Updated simple demo to showcase new flow where all measurements are defined up front in TestSuite TestCases.
- Fixed several bugs triggered by specific symbols in resource names.
- Many internal fixes and improvements.