立即与支持人员聊天
与支持团队交流

Code Tester for Oracle 3.5 - Release Notes

Release Notes

Release Notes

Code Tester for Oracle® 3.5

Release Notes

9/27/2018

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 3.5 is a minor release, with enhanced features and functionality.

New features and enhancements

New features and enhancements

Code Tester for Oracle 3.5

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

Code Tester for Oracle 3.4

  • 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

Resolved Issues

Code Tester for Oracle 3.5

Resolved Issue Issue ID
Access violation at address 00404DB7 in module 'DellCodeTesterOracle.exe CTO-300
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

Previous Releases of Code Tester

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

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

Known Issues

Known Issues

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

Code Evolution known issue

Please read before using this module

The Code Evolution module of Code Tester can determine what changes were made in a tested program and adjust the test definitions according to these changes. This version of Code Evolution can handle various kinds of changes in a tested program; however, testing has shown that the current design is not optimal in use cases where the data types of arguments are changed.

In particular, this issue affects changes to complex data types (records, object types, collections and their combinations). Although Code Evolution can determine that a data type was changed, it does not repair or change the test definition. Rather, it removes the test elements associated with the changed data types, and then creates new test elements with the revised data types. As a result, all inputs and outcomes based on the changed data type are removed and must be recreated by the Code Tester user. In cases where the data types are very complex, this rebuilding can require significant work.

The Code Tester team is working on enhancements that will preserve input and outcome values when data types are modified.

General known issues

Known issue Issue ID

Running CTO.exe from the command line using /m=u fails to execute the action.

CTO-753
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>. N/A
Code Tester for Oracle does not support Extended SQL Data Types introduced in Oracle 12c (VARCHAR2, NVARCHAR2, and RAW Data Types). N/A
Very large scripts in the customization section of a test can result in poor UI performance. N/A
Unicode type schemas: Code Tester is not able to connect to Oracle schemas with Unicode symbols in their names. N/A
CHAR Arguments: Handling of CHAR (fixed length) arguments not correct when the argument is defined as %TYPE against a column. 49010
Results Viewer: Attributes are not displayed in Results Viewer for "IN argument values". The values of type OBJECT do display. N/A
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. N/A
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. N/A
If you argument name contains a single quote, as in "in_arg_with'", the code that Code Tester generates will be invalid. You will need to change your argument name in this case. N/A
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. N/A
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. N/A
If you use the Generate Outcomes wizard and a calculated value is NULL, it will by default be displayed as a string "{null}", and this will be saved into the outcome as the expected value. You will need to manually change this string to a real NULL value before running your test to get a correct result. N/A

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.

N/A

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.

N/A
When you specify the name of the table for a table outcome (for example: "Is a table empty?" or "Is this table equal to another table?"), you may not include any kind of comment next to the table name. Examples of invalid specifications of tables: EMPLOYEES /* employee table */ or EMPLOYEES – employees table. N/A
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. N/A
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. N/A
Random number generation fails on Oracle 9i: You will be unable to define test cases that rely on random number generation in Oracle 9i. Limited support by Oracle for table function execution in SQL queries causes errors. N/A
You cannot test a query directly. Instead, you will need to create a procedure that is, in essence, a "dummy" driver. Create a test definition for that procedure, then define an outcome for that query. N/A
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. N/A
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. N/A
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. N/A
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. N/A
Query strings of more than 32k are not supported. N/A
New dataset comparison logic does not work with a query that contains expressions that are not given column aliases. N/A
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. N/A
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. N/A
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. N/A
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. N/A
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. N/A
When you export a test definition, you can specify that you want the export owner set to the owner to which the test will be imported. This step will remove most but not necessarily all of the schema names in the test definition. Some may still be prefixed on packaged types, such as collection types and record types. This will cause compile errors on the test code. Solution: go into your test definition and change/remove those schema names, or edit the export file directly. N/A
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). N/A
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. N/A
When testing cursor variables, the outcome of <SYS_REFCURSOR>=<SYS_REFCURSOR> type always fails. However, these outcomes can be easily replaced with <SYS_REFCURSOR>=<QUERY> where the expected query uses the same SELECT statement as the expected cursor variable. N/A
自助服务工具
知识库
通知和警报
产品支持
下载软件
技术说明文件
用户论坛
视频教程
RSS订阅源
联系我们
获得许可 帮助
技术支持
查看全部
相关文档

The document was helpful.

选择评级

I easily found the information I needed.

选择评级