Releases: mt-ag/quasto
Release 24.1
New Features:
- Improved Usability of our APEX Quasto App
- Real Time Execution of Rules in the Quasto App
- Upload Rules as JSON and edit them with the App
- new Region Plugin to show Rule execution Results
- improved installation process
- closer Integration of Execution of APEX Rulesets
Release 23.2.1
Features of our new Version 23.2
1. Schema and Object Blacklisting:
We are implementing a schema and object based blacklisting. Those schmemes and objects are not checked when rules are executed. This can be beneficial for internal Oracle-owned resources.
2. Exclusion of objects which are not owned by a the testing schema
To avoid testing objects that are granted access by public synonyms or belong to other schemas, we are introducing a mechanism to exclude such objects from unit testing. This further refines your testing processes.
3. New table for Unit Test Results
In order to store unit test results, we are implementing a new table QA_TEST_RESULTS to hold this data to be further analzyed and processed. The results, which includes all invalid objects, is saved in a XML JUnit-compatible format.
4. Improved Unit Test Package Generation
The create_ut_test_packages_pkg will be renamed to QA_UNIT_TESTS_PKG, and it will offer the option to create unit test packages per rule or as a single package containing all active rules per client/project name. Additionally, we want to enhanced the naming convention, including the schema name in the package names for more straightforward multiple schema management.
5. Changed/new Data types
The data type "QA_RULE_T" has been extended with a new attribute "object_details" to hold additional information about an object. This could include the line, position and function name where to find an invalid parameter name inside a package, for example. The data types "RUNNING_RULE_T" and "RUNNING_RULES_T" are used for internal processing during the execution of rule SQL statements.
In addition, the new types "QA_SCHEME_OBJECT_AMOUNT_T" and "QA_SCHEME_OBJECT_AMOUNTS_T" have been added which are used for calculating the number of invalid objects per scheme during the execution of Unit Tests.
6. Oracle APEX Application
One major component of the next update will be an APEX application to add new rules or configure existing ones. In this app, the rule attributes can be entered via selection lists and text fields. Next to the existing DDL-based rules, we will also introduce the support for APEX based rules to check the integrety of APEX objects. Exported rules can be imported as JSON files which allows rules to be exchanged across multiple QUASTO instances.
Furthermore, a dashboard page will be available, which provides a graphical overview of the ratio between successful and failed tests. Filtering by schema and execution date to display details of invalid objects will be possible.
7. Automated daily Unit Testing
We are planning to implement a new scheduler Job which runs all generated Unit tests of Rules on a daily basis. The results are saved in the table mentioned under point #3. This scheduler job can also me activated and deactivated via the APEX application.
8. Installation Process will be adapted to be able to upgrade from any released version to the latest one
The installation process will be adapted so that it will be possible to upgrade from any previous version to the latest release of QUASTO.
9. Version Naming has been changed to standard Oracle Format
The new Format for our upcoming and later releases will be changed to the standard that oracle uses for their relases as well.
The first part is always the year of release and the second part will be in our case the incremental number of an increnmental release cycle during the year.
In Our Case we already released a Version this year so we are jumping to the Version #23.2
Release 23.2
Features of our new Version 23.2
1. Schema and Object Blacklisting:
We are implementing a schema and object based blacklisting. Those schmemes and objects are not checked when rules are executed. This can be beneficial for internal Oracle-owned resources.
2. Exclusion of objects which are not owned by a the testing schema
To avoid testing objects that are granted access by public synonyms or belong to other schemas, we are introducing a mechanism to exclude such objects from unit testing. This further refines your testing processes.
3. New table for Unit Test Results
In order to store unit test results, we are implementing a new table QA_TEST_RESULTS to hold this data to be further analzyed and processed. The results, which includes all invalid objects, is saved in a XML JUnit-compatible format.
4. Improved Unit Test Package Generation
The create_ut_test_packages_pkg will be renamed to QA_UNIT_TESTS_PKG, and it will offer the option to create unit test packages per rule or as a single package containing all active rules per client/project name. Additionally, we want to enhanced the naming convention, including the schema name in the package names for more straightforward multiple schema management.
5. Changed/new Data types
The data type "QA_RULE_T" has been extended with a new attribute "object_details" to hold additional information about an object. This could include the line, position and function name where to find an invalid parameter name inside a package, for example. The data types "RUNNING_RULE_T" and "RUNNING_RULES_T" are used for internal processing during the execution of rule SQL statements.
In addition, the new types "QA_SCHEME_OBJECT_AMOUNT_T" and "QA_SCHEME_OBJECT_AMOUNTS_T" have been added which are used for calculating the number of invalid objects per scheme during the execution of Unit Tests.
6. Oracle APEX Application
One major component of the next update will be an APEX application to add new rules or configure existing ones. In this app, the rule attributes can be entered via selection lists and text fields. Next to the existing DDL-based rules, we will also introduce the support for APEX based rules to check the integrety of APEX objects. Exported rules can be imported as JSON files which allows rules to be exchanged across multiple QUASTO instances.
Furthermore, a dashboard page will be available, which provides a graphical overview of the ratio between successful and failed tests. Filtering by schema and execution date to display details of invalid objects will be possible.
7. Automated daily Unit Testing
We are planning to implement a new scheduler Job which runs all generated Unit tests of Rules on a daily basis. The results are saved in the table mentioned under point #3. This scheduler job can also me activated and deactivated via the APEX application.
8. Installation Process will be adapted to be able to upgrade from any released version to the latest one
The installation process will be adapted so that it will be possible to upgrade from any previous version to the latest release of QUASTO.
9. Version Naming has been changed to standard Oracle Format
The new Format for our upcoming and later releases will be changed to the standard that oracle uses for their relases as well.
The first part is always the year of release and the second part will be in our case the incremental number of an increnmental release cycle during the year.
In Our Case we already released a Version this year so we are jumping to the Version #23.2
Release 1.1
QUASTO Release Update
QUASTO - Quality Assurance Tool
Release Date: 17.04.2023
Release Version: 1.1
Overview:
Quasto is a project for checking guidelines and code quality for inside the oracle database. You can define rules for
your own projects to check the quality in different kind of Database Objects including APEX. It is possible to upload and download sets of
rules and to define orders in which the rules will be processed.
Project uses the MIT License.
Features:
Upload an Download rules in JSON format: Now it is possible to easily upload or download a bulk of rules in JSON format. With this option
You do not have to upload rule by rule. You now can upload a set of rules. With this option it is also possible to download a set of rules of
one project and install them in a nother project.
Logging of Erros: A logger-processing is added now. This Includes the Oracle integrated logging and is added in every
Function and Procedure so that an easy analysing of Errors is now possible. The Logger will raise an Error including the Procedure name and the information of the Object that
raises the error.
Excluding Objects in rules: Now it is possible to define for which Objects a rule will not run. You can exclude Objects for example when you already
know that an object does not fit a rule but have to keep as it is for reasons.
Defining predecessors: It is now possible to define a predecessor order for rules if it is necessary that one or more rules
have to run before a nother rule. You can build complete predecessor chains. There will be also a check for cycles in the chains that
will stop the preocessing immediatly if a cycle is detected.
Changes:
Code Generation for Testpackages: The processing of generating the Test Packages ha been revised.
Using Rules to Check APEX: The Structure of the rules is changed, that it is now possible to also check the APEX context. The rules for
APEX differ in the parameters apex_app_id and apex_page_id to the existing rules.
New rule processing order: The processing order of the rules has now changed. They will be processed now based on the predecessor order if defined.
Notes:
The Release 1.1 holds all relevant information for a full software install and for an update from Release 1.0 to 1.1
Therefore if you have not installed QUASTO yet, you only need the installation for Release 1.1 to get a full instalaltion.
Please read the installation instructions on github for furhter informtaion: https://github.com/mt-ag/quasto
1.0
First Release of Quasto.
DDL, DML, PL/SQL or APEX Metadata test can be defined.
0.91
missing / added