Version 1.8.3 of Quest Code Tester (the most powerful automated testing tool for PL/SQL currently available, and my main obsession these days) is now available for downloading from Quest's on-line SupportLink (after being prompted to log in you will be taken directly to the download page). If you write PL/SQL code or manage a team that does so, you really owe it to yourself to check out this tool. Thirty-day free trial available at www.quest.com/code-tester-for-oracle.
I strongly urge all Code Tester users to upgrade to this version. It is, without doubt, the most stable and richly-featured release of this automated testing tool.
Of course, you would expect that it would have more features, which I detail below. How, you might ask, can I be sure to make my claim of "most stable"?
Very simple: because for 1.8.3, we finally "ate our own dog food" in a very big way and constructed an automated regression test of the backend functionality of Quest Code Tester.
You might have thought that since this is an automated testing tool, we would have done this from the very start. Yes, that would have been ideal, but so little about our lives are ideal, would you agree?
Certainly, we used Code Tester to test elements of the backend right from the beginning, but that is a different thing from building anything approaching a complete and automated regression test.
That is the most important new "feature" of 1.8.3, and we did it by creating a new utility to complement (and eventually be folded into) Code Tester, which we are calling Test Launcher. I talk more about Test Launcher in a follow-on post to this blog. We will soon be posting Test Launcher on the Code Tester community library in the Downloads and Upgrades section. You will all be able to use Test Launcher yourselves (though initially it will not be supported by Quest Support - you will need to report issues through the community).
New Features in 1.8.3
Besides fixing over 75 bugs, we added some very nice new features. The following information is also available in the release notes.
New Export/Import Architecture
Code Tester now writes export files as an XML document. It will import both the legacy ".QUT" export files as well as the new .XML formatted files. Merging is now only supported for XML exports. The new export format will be much more reliable and easier to support.
Expanded Set of "Hooks"
Code Tester now offers a greatly expanded set of hooks via the my_codetester package to customize the behavior of Code Tester at key points like before and after import, before and after running a test, etc.
Reports for Suites
All reports defined for individual test definitions are now available for suites as well.
View All Test Definitions in Test Dashboard
You can now change the schema selector to "All Schemas" so that you can see the list of all test definitions to which you have access (run and/or edit) at once, without changing the selected schema.
Use Windows Name to Track Changes to Test Definition
You can use the my_codetester package to specify to Code Tester that the "created by" and "changed by" audit columns on test definition tables be populated with the name of the Windows user, rather than the Oracle schema name returned by the USER function.
Test Package Formatting on Demand
Code Tester will no longer automatically format the generated test code (this will improve overall performance of generation). You will now need to explicit request a format and recompile in the Test Code tab of Test Editor.
Improved Support for Wider Set of Datatypes
Code Tester will now allow you to create test definitions properly for all kinds of timestamps and intervals. You can also create a test definition for an object type, though you will still need to write the actual test logic yourself.