Oracle Forms is a component within Oracle fusion middleware services. In the West Australian government agency where I use TestComplete, we have a legacy Oracle Forms 11g system which we we will use for the next 4 to 6 years before it is all converted to java.
Oracle Forms can be tested by TC but the biggest challenge is the fact that the java objects representing the UI are generated by the Oracle Forms runtime and have very dynamic values, e.g. a button can be called VButton148 and a simple refresh or return to the menu will show it is now VButton179 !
We found it was most flexible, efficient and portable to store mapping information for the UI objects on the Forms in an external store - we started with .xls files but ended up with Access database with over 2200 UI objects and counting. We have a large set of library routines which have built in smarts to use the external mapping info, search for the objects, and optionally perform actions such as click, select, retrieve etc. Some of the extra logic involves interpreting mapping info to find the small minority of especially difficult objects by their proximity or positional relationship to more easily found objects.
Other gotchas:
(1) When you have tabs within the form, only the objects that are are visible are initially created and found in the object tree. However, once a tab has been displayed and is then overlaid by another tab, the hidden tab's objects still show their .Visible and .VisibleOnScreen attributes as true ! We had to add other smarts into the routines to sort this out where developers have identically named and structured UI objects on more than one tab.
(2) Objects within list views are all identically duplicated objects within a column but the controlling list object is not exposed in the object tree. Again, some mapping logic smarts were developed to handle the lists the way we visually understand them - rows and columns.
The Forms mapping logic is in javascript of about 3000 lines.
Other aspects of TC are working well for our testing in Oracle Forms 11g.
Hope this helps.
S. Harnek
Perth, Australia