Chatta subito con l'assistenza
Chat con il supporto

Code Tester for Oracle 2024 R2 - Release Notes

Release Notes

Code Tester for Oracle® 2024 R2

Release Notes

10/15/2024

These release notes provide information about the Code Tester for Oracle release.

About Code Tester

Code Tester for Oracle is a tool to help you test Oracle® PL/SQL code. We all take pride in our code and want to test it, but we also know that code testing is one of the biggest challenges in the development of software today. These challenges include having to write a large volume of test code, keeping that code synchronized with our application code as it changes, and verifying the results of running our tests. This becomes especially important as organizations around the world migrate their traditional database development to agile and DevOps practices, where continuous delivery and automation are critical to the success of the deployment.

Code Tester for Oracle tackles these challenges by making it easy to define your tests, generate your test code, and run the tests, all within an easy-to-use graphical interface. Code Tester enables you to call these tests as part of an automated build process, as well as perform regression testing in the future.

The bottom line with Code Tester: you don't write test code. You describe your tests, and the tool generates the test code (as a PL/SQL package) that implements your test definition.

Join the Code Tester Community

The Code Tester Community is ready to help you solve the complex problems of unit testing and continuous integration. There you will find videos, white papers, web-based training, expert blogs and podcasts, as well as beta releases, trial downloads and much more.

To join and interact with the Code Tester Community, go to https://forums.toadworld.com/c/code-tester-for-oracle

Two of the most-often used features of the Community are the Forums and the Idea Pond.

  • On the Idea Pond page, you can submit your ideas to improve Code Tester and vote for or against other customers' ideas. We encourage all Code Tester users from new to experienced to let us know how we can improve our product.
  • On the Forum page, you can ask a question or start a discussion and view all other forums within the community.

The Code Tester blog pages feature a broad range of information, including topics of interest to our industry, as well as instructions from team members on how to use the latest Code Tester features.

The Code Tester web-based training is a perfect accompaniment to your product license. This free training walks you through major product features and explains how to perform frequent tasks.

About this release

Code Tester 2024 R2 is a minor release, with enhanced features and functionality.

New features and enhancements

Code Tester for Oracle 2024 R2

This release of Code Tester for Oracle is a minor release and includes resolved issues and minor enhancements. See Resolved issues for more information.

  • This release of Code Tester for Oracle adds support for:

    • Clientless connections; an Oracle client is no longer required
    • Improved repository installation wizard
    • Total execution time shown in the results
    • The left panel (connections, tests, etc.) shows automatically when needed if it is hidden
    • Disconnecting from the database automatically activates the connections panel
    • Improved repository installation/upgrade logging
    • Various user interface improvements

Previous Releases of Code Tester

  • Subscription licensing model
  • Oracle 21 (tolerant) database platform
  • Windows 2019 Server Operating System
  • Windows 11 Operating System
  • Support for Oracle 18 and Oracle 19 database platforms.
  • The supported continuous integration operations are enhanced with test reports.
    • You can now save a test run report in a file while running from the command line. Alternatively, you can send the test report to the standard output as well.
    • The reports are enhanced with the JSON format output.
  • As an initial effort to enhance the private data protection, you will be informed that you might wish to review a support bundle content before sending it to the support team.
  • A front end debugging option was added to the CTO tracing functionality.
  • You can now disable certain fields when running a test.
  • Code Tester now supports connections through a proxy user.
  • Support for Oracle Edition Based Redefinition has been improved. The Repository Properties page now includes Editions information, and the Oracle server section in the support bundle includes Editions information.
  • The Code evolution user interface has been redesigned to make its use more efficient.
    • Input/outcome value changes are now visible and can be edited.
    • Test case element values are preserved when data type modifications are updated with the Code Evolution.
  • Repository setup was improved to control access and prevent unintentional overwrites. To support this, the following were added:
    • A new CTO_ADMIN_ROLE user was added. Only this user can administer a repository through the tasks that are under the Administration folder of the Code Tester installation. The repository wizard verifies that the user has this role before allowing the task to be performed. A new repository can be installed by any user during the installation of Code Tester, but the CTO_ADMIN_ROLE is required to install a repository after installation.
    • When connected to a local repository, only this local repository is allowed to be managed. When connected to a shared repository, only that shared repository is allowed to be managed.
    • A new repository can now be created without connecting to the database.
    • A warning now appears if a user connects to a repository that was re-installed.
    • An older version of Code Tester can now connect to a newer repository.
    • To enable downgrades of Code Tester in the event that a new installation fails, an option AllowRepositoryDowngrade was added and is set to False by default. False means that an attempt to downgrade the repository will fail and return an error. True means that a downgrade is allowed to proceeded with a warning.

For the most up-to-date list of new features, see the Code Tester for Oracle Release Notes at the Quest Support Portal.

Resolved Issues

Code Tester for Oracle 2024 R2

Resolved Issue Issue ID
   

Previous Releases of Code Tester

Resolved issue Issue ID

Connecting to database taking over 15 minutes

CTO-940

Schema named as CUBE keyword is causing errors

CTO-768

Test Code generation failed after adding an outcome to test definition created in v3.2

CTO-815

128-char object names are unsupported on Oracle Database 12c Release 2 and newer

CTO-833

Reduce database requests at the connection time

CTO-657

Not able to create test case via Program explorer

CTO-295

An error dialog is showing a message about a custom TYPE when editing an existing test case after the Code Tester upgrade

CTO-290

Provide an option to regenerate "equality function" for complicated data types

CTO-213

Running Test on the backend causes Oracle error but GUI running is OK

CTO-91


Resolved issue Issue ID

An error in varchar2 length when using unicode character testing qctod#betwnstr

CTO-136

Export Test Data Groups in Test Data Manager

CTO-158

Improve COUNT templates for outcomes tested ref cursors

CTO-191

Table or view does not exist error when run Test For wns_lst

CTO-466

Validate only few required columns from a table

CTO-492

Code Tester encountered one or more problems attempting to install,upgrade or remove the backend.

CTO-577

Export file contains an excessively huge value

CTO-582

Wrong Parameter in Repository Manager shortcut

CTO-585

Code Evolution error after import

CTO-621

Import errors for very large XML documents CTO-690
Enhancement: Reduced the number of database calls for displaying test definitions. This enhancement is designed to improve performance. CTO-696

For the most up-to-date list of resolved issues, see the Code Tester for Oracle Release Notes at the Quest Support Portal.

Best Practices and Limitations

The following is a list of best practices and limitations, including those attributed to third-party products, known to exist at the time of release.

  • When testing cursor variables, the outcome of < SYS_REFCURSOR> = < SYS_REFCURSOR> type fails. However, these outcomes can be replaced with < SYS_REFCURSOR> = < QUERY> , where the expected query uses the same SELECT statement as the expected cursor variable as < SYS_REFCURSOR> = < SYS_REFCURSOR> .
  • Very large scripts in the customization section of a test can result in poor UI performance.
  • Unicode type schemas: Code Tester is not able to connect to Oracle schemas with Unicode symbols in their names.
  • CHAR Arguments: Handling of CHAR (fixed length) arguments not correct when the argument is defined as %TYPE against a column.
  • Results Viewer: Attributes are not displayed in Results Viewer for "IN argument values". The values of type OBJECT do display.
  • The default value for parameters of object type methods are not visible inside Code Tester. You must explicitly type in the default value if you want to test that option.
  • Cannot run a test definition when locked by another user: After a test definition is run, its "last run status" is updated. This cannot be done if the test definition has been locked by another user (say, to edit the test definition in some way). So if you try to run a locked test definition, Code Tester will stop you.
  • Cannot request default value for IN argument of object type method: In 1.9 and higher, you can now request that Code Tester not pass a value for any IN arguments that have a default value (thereby using the default value instead). This feature is only available for procedures and functions defined in packages or at the schema level. It is not supported for methods of object types.
  • If you enter the four letters "null" as the literal value for an input or outcome expected value, Code Tester will record that value as a NULL, rather than a string of four letters. This will happen for any case variation of these four letters, such as "Null" and "NULL". If you need to pass a literal string consisting of these four letters, specify it as an expression and surround the string in single quotes.
  • ALTER SESSION commands in your code could cause errors: If you include statements like those shown below in your programs:

    EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_SORT=BINARY_CI';

    EXECUTE IMMEDIATE 'ALTER SESSION SET NLS_COMP=LINGUISTIC';

    Then you will get runtime errors when you try to run your test.

  • If your test definitions contains outcomes for expressions or single value queries, then after importing you may get compile errors in your test code the first time you try to run the test. Errors will look like this:

    PLS-00103: Encountered the symbol ";"

    and the test code will contains lines of code like:

    l_fp_value ;

    (the datatype of the declaration is missing).

    In this case, simply open your test definition in Test Builder and immediately run your test. It should then compile without errors. After doing this, export your test definition and it should work properly after that point.

  • If you test the contents of a query that contains unnamed expressions (that is, it is an expression rather than simply a column name and you do not provide a column alias), then that expression may not: contain a single quote, be equal to SYSDATE, or be equal to USER. Examples that will cause problems: SELECT name || 'abc', SELECT SYSDATE, SELECT USER. This is due to idiosyncratic behavior in the Oracle parser.
  • When you import a single test definition, Code Tester will warn you if it cannot find the program that this test definition purports to test. When you import a suite, this same warning will not be shown if one or more of the test definitions in the suite reference a program that cannot be found.
  • You cannot test a trigger directly. Instead, you will need to create and/or run a procedure that performs the DML operation necessary to fire the trigger. You then create outcomes to verify the changes made by the trigger.
  • When you import a suite, it deletes any existing suite with the same name, even if it is actually a different suite owned by a different user.
  • When you uninstall a Code Tester repository, public synonyms are dropped, even if those synonyms are not owned by the schema from which you are uninstalling the repository. In this case, you will need to re-create the public synonyms.
  • You cannot test the contents of a table or query with column named COLUMN_NAME. It must be renamed via the query's SELECT column alias.
  • Query strings of more than 32k are not supported.
  • New dataset comparison logic does not work with a query that contains expressions that are not given column aliases.
  • When you enter a SELECT statement for a query, that query must not have any leading comments, nor should it start with OPEN FOR. It also should not have a terminating semi-colon. If you include such text, you may see compile errors in the generated test code or your query may be interpreted as a table name.
  • Testing contents of tables with non-scalar columns: Code Tester does not perform dataset comparison checks for tables with CLOB columns and other complex datatypes. Instead, Code Tester will automatically ignore any columns of these types that cannot be used in the comparisons.
  • When testing the contents of cursor variables with very large numbers of rows, you may receive a "ORA-04030: out of process memory" error. This occurs because Code Tester users nested tables to cache the cursor variable result set. You will need to reduce the number of rows analyzed in your test to avoid this issue.
  • Test data values (values in Test Data Groups) cannot have more than 32,512 characters in them. While PL/SQL officially supports variable length strings of up to 32K (32767) characters, when using dynamic SQL the limit is reduced to 32,512. When working with Test Data Groups, Code Tester applies those values using dynamic SQL, thus hitting the lower limit.
  • Code Tester performs some basic analysis to determine if you have sufficient tablespace available to install the product. This calculation is not always accurate, however, you may run out of space. The installer will notify you that the installation fails, but it will not report specifically on this error. If you have an install error, please check the qu_install.log file for tablespace errors. If present, you will need to install into a different tablespace or ask your DBA for more space.
  • You may not enter sub-second values in your timestamp literal value. Code Tester only supports time specifications down to the nearest second. You can, however, specify sub-seconds using expressions (like TO_TIMESTAMP function, for example).
  • When enabling DBMS profiling with customization and then running a test, you may encounter an ORA-03114: not connected to ORACLE message or an ORA-03113: end of file on communication channel error message and find that they have been disconnected from the database. This is an Oracle bug in the profiler logic and occurs inconsistently.
Strumenti self-service
Knowledge Base
Notifiche e avvisi
Supporto prodotti
Download di software
Documentazione tecnica
Forum utente
Esercitazioni video
Feed RSS
Contatti
Richiedi assistenza sulle licenze
Supporto tecnico
Visualizza tutto
Related Documents

The document was helpful.

Seleziona valutazione

I easily found the information I needed.

Seleziona valutazione