releases¶
Changes in release 3.1.12
New features
- Added support for description in the
--%disabledannotation. See documentation. Implemented in: #1183, resolves #610. - Added support for native
JSONdatatype on Oracle21c. Implemented in #1181, resolves #1114. - Added new mather
to_be_within( distance|pct ).of_(expoected). See documentation. Implemented in #1076, resolves #77.
Enhancements
- Improved performance of SQL used to retrieve Coverage sources. Implemented in #1187, resolves #1169.
- Added ability for utPLSQL to gather coverage on code invoking DBMS_STATS package. Implemented in #1184, resolves #1097, #1094.
- Fixed typos and improved documentation. Implemented in #1173, #1171
Bug fixes
- Actual and Expected are now correctly reported when comparing
JSONdata. Implemented in #1181, resolves #1113. - Packages with removed annotations are now correctly recognized as non-utPLSQL packages. Implemented in #1180, resolves #1177.
- Fixed issues with comparison of nested object structures. Implemented in #1179, resolves #1082, #1083, #1098.
Internal improvements
- Moved build and test process for utPLSQL from Travis to GithubActions. Implemented in #1175
Downloads
Download v3.1.12 release version here
Changes in release 3.1.11
Enhancements
- utPLSQL can now be used to generate coverage reports for external tools. See documentation Implemented in: #1079, resolves #1025
- Enhanced UT_COVERAGE_COBERTURA_REPORTER to better support TFS and GitLab. Implemented in #1137 and #1140, resolves #1107
- Added support for installation on Oracle 21c - removed dependency on DBMS_OBFUSCATION_TOOLKIT. Implemented in #1112, resolves #1111 and #1127
- Added support for running utPLSQL framework in parallel-enabled database. Implemented in #1160, resolves #1134
Bug fixes
- Suite structure is built properly even with other than English TNS settings. Implemented in #1061, resolves #1060
- Fixed XML content reporting (CDATA) in UT_REALTIME_REPORTER used by SQLDeveloper plugin. Implemented in #1075, resolves #1073
- Fixed XML content reporting (CDATA) in JUnit reporter - regression. Implemented in #1085, resolves #1084
- Fixed issue with utPLSQL failing to run coverage reporting when trigger has overlapping name with procedure/function/package/type. Implemented in #1091, resolves #1086
- Fixed issue with parsing utPLSQL suites with DDL trigger when usign AUTHID clause. Implemented in #1093, resolves #1088
Internal improvements
- Improved how privilege checks are handled by framework installation. Implemented in #1056, resolves #1050
- Restructured installation instructions to make it more readable. Implemented in #1063, resolves #1062
- Updated database requirements in documentation. Implemented in #1065, resolves #1064
- Removed duplicated call to install profiler tables. Implemented in #1164, resolves #1149
- Fixed failing internal framework tests on Oracle 21c. Implemented in #1158, resolves #1151
- Fixed confusing typo in documentation. Resolves #1154
- Moved build process from travis-ci.org to travis-ci.com. Implemented in #1152
- Added an example of reporter reporting all expectations, not only the failing ones. Implemented in #1092
Downloads
Download v3.1.11 release version here
PL/SQL Developer plugin released!
Happy new year! Thanks to Simon Martinelli utPLSQL v3+ is now integrated with PL/SQL Developer IDE
Features
- The Plugin enables PL/SQL Developer to run tests and code coverage with utPLSQL
- Tests and code coverage can be run for the current user from the tool ribbon or from the context menu on a package or a user
- Test results shown in a test runner window and the code coverage report will be opened in the default browser
Documentation
See details of plugin usage in readme file
Downloads
- Download the plugin release from releases page
- Copy
PlsqlDeveloperUtPlsqlPlugin.dllorPlsqlDeveloperUtPlsqlPlugin_x86.dllto the PlugIns directory of your PL/SQL Developer installation
Changes in release 3.1.10
Enhancements
- utPLSQL test runner is now validating arguments of
--%throwsannotations at runtime #721 #1033 - Documented limitations of insignificant spaces comparison in compound data #880
- utPLSQL will now detect empty annotation cache for schema even with DLL trigger enabled #975
- Order of procedures and annotation now determines default order of tests in suite #1036
Bug fixes
- Nested contexts are now properly identified #1034
- TeamCity test reporter is now including error message #1045
Internal improvements
- All self-tests for utPLSQL framework can now be executed using test-owner schema #969
- Misleading rollback warning is no longer showing when running self-tests for utPLSQL #982
Downloads
Download v3.1.10 release version here
Changes in release 3.1.9
New features
- Added ability to define nested contexts within test suite #938
- Added ability to exclude tests/suites by tags when invoking a test-run #1007 #983
- Added new annotation
--%nameto allow for providing custom name for contexts #1016
Important changes
The value of --%context annotation is no longer representing context name.
This value is now context description (displayname).
With this change, the --%context annotation is now aligned with --%test and --%suite annotation syntax.
New annotation --%name was introduced to facilitate naming of contexts.
Enhancements
- Improved documentation for running tests
- Improved documentation for tags #1003
- Improved documentation for annotations
Bug fixes
- Fixed bug with bad stacktrace showing in failing/erroring test #1000
- Fixed issue with lack of validation for context name #966
- Fixed problem with install script privilege check for installation with DDL trigger #992
- Fixed issue with some common column names causing cursor comparison to fail #997
- Fixed issue with invocation of standalone expectations on cursor #998
Internal improvements
- Fixed runability of utplsql self-tests #968
Changes in release 3.1.8
New features
- Added support for session context to provide test and suite information during test run #963 #781
- Added ability to invoke expectations without running framework #956 #963
- Failing expectations are now reported with call stack #967 #963
Enhancements
- Improved framework table private data protection #922 #954
- Improved install process. It is now unified for installation with both public and private synonyms #957 #954
- Improved reporting of warnings for integration with SQLDeveloper #964
- Improved query to retrieve coverage sources #981 #970
- Improved security around malicious utPLSQL owner name #920
Bug fixes
Changes in release 3.1.7
New Features
- CLI is now runnable from Java 8-12 (and probably also upcoming versions)
- CLI now uses Picocli instead of JCommander. This might have some impact on how parameters are interpreted, for example on windows machines when you define
-f=ut_documentation_reporter -o="output.txt"you will have to enclose the "output.txt" part as shown - Support for Tags via
--tags=tag1[,tag2[,tag3]]parameter (#157) - Support for random order of test execution via
-r/--random-test-orderand-seed/--random-test-order-seed(#139) - Ability to enable DBMS_OUTPUT from cli via
-D/--dbms_output(#137)
Enhancements
- Completely removed HikariCP (#158)
- A warning is shown if
orai18n.jaris not on the classpath. This is highly recommended due to some strange behaviour of the jdbc-driver otherwise (#146, #153)
Bugfixes
- Type mapping (
-type_mapping) parameter is now interpreted correctly (#143)
Internal enhancements
- Improvement of tests
- Refactoring towards immutability
- Added some more debug information
Changes in release 3.1.7
Highlights
- utPLSQL java-api now supports JDK 8-12
- Support to call Tags
- Support for random order of test execution
Changes in public API
CompatibilityProxy- It's possible to instantiate it with an optional
assumedUtPlsqlversion. This replaces the formerskipCompatibilityCheckparameter - Method
getDatabaseVersionis now deprecated in favor ofgetUtPlsqlVersionandgetRealDbPlsqlVersion TestRunnergetOptionsreturns the currentTestRunnerOptionsnow
Internal changes
- Added several new tests
- Several small refactorings
- Additional logging
- Preparations to completely rewrite the api
Download
https://packagecloud.io/utPLSQL/utPLSQL-java-api/packages/java/org.utplsql/java-api-3.1.7.jar
Maven
<dependency>
<groupId>org.utplsql</groupId>
<artifactId>java-api</artifactId>
<version>3.1.7</version>
</dependency>
Gradle
utPLSQL v3.1.7 released
## New features
- Added support for comparing
jsonin Oracle 12.2 and above #924 - Introduced
tagannotation to enable tagging of tests and suites #66 - Added support for random order of test execution #422
## Enhancements
- Added optional install with DDL trigger to speed up framework start #901
- Removed dependency on
dbms_utility.name_resolve#569 #885 - New output buffer table structures improving performance and addressing timeout issues #915
## Bug fixes
- Fixed
ut_realtime_reportermissing warnings in test and suite output structures #936 - Fixed output_buffer purging error #934
- Fixed
join_by / exclude / includeinvalid syntax on collection in anydata compare #912 - Fixed
ut_junit_reporterproducing invalid output on failing tests with long failure message #927 - Fixed
ut_sonar_test_reporterproducing invalid output on failing tests with long failure message #925 - Fixed
ut_coverage_cobertura_reporterproducing wrong line breaks which breaks the xml validation against DTD #917 - Fixed
excludeoption for ref cursor where column order was not resolved correctly #911 - Fixed
unorderedoption for ref cursor with null values #914 - Fixed number precision when selecting from dual #907
- Fixed ref cursor errors with generated column names #902
- Fixed
ORA-00907when comparing ref cursors with BINARY_ columns #899 - Fixed wrong results when comparing CLOBs with
to_be_likein Oracle Database 11.2.0.4 due to Oracle Bug 14402514 #891 - Fixed performance issue with code coverage report on huge PL/SQL code base #882
## Documentation improvements
- Added install instructions for DDL trigger #874
## Internal enhancements