Why RFT can't recognize the controls in my application .. ??
prakash s chauhan 27000140Y5 Comments (3) Visits (11541)
Sometimes you may find yourself wondering ...
"..Why can the Rational Functional Tester [ Recorder, Test Object Inspector or the Player ] not see/find the control(s) in my application"
"..the script was recorded correctly some time back and all of a sudden the playback throws Obje
Well the simple answer to above issues could be ... chances are the application is "Not Enabled" for testing
In RFT's terminology Enabling an application means making the application testable by RFT , in other words, making RFT components (Object Finder,TestObject Inspector, Recorder, Player etc) "see" the application correctly.
By correctly I mean Html controls should be recognized as Html, Java controls are recognized as Java and not probably as ActiveX , OLEObject, Win controls, or "not seen at all" in worst case.
If you intend to test Html application then you don't enable that application itself but rather the browser (IE or FF) which is going to render the html page.
For testing a Java application you again need not enable the application itself (except standalone SWT apps*) , but the JRE that is going to execute the application.
However in case of Flex ,you need to have the browser enabled as well as the Flex application**.
For applications like Win32 or .Net usually the application is enabled on the fly as and when required , for eg during recording when you click on the Win/.Net application the application gets enabled right here and then.
From RFT's perspective an enabled application is something, RFT can talk-to using something called a TestContext. So an enabled application essentially means that, it has a TestContext running in it.
There are two types of enablement ( as of writing this article and RFT release 22.214.171.124).
Enabling browser consists of two steps ,
Enabling a JRE in simple terms is just letting the JRE be aware of some RFT JAR files , so that whenever a JVM (Java virtual machine) is loaded by that JRE, it can also load these required RFT- specified Jar files.
The same holds true for other types of applications like Flex (this itself has two types of enablement procedures , compile type and Runtime enablement), but again the intent is same to let RFT communicate with the Flex application.
With the release of RFT version 8.2.2 . Applications like Html/Java/SWT/RCP would possibly be enabled dyna
If an application is not getting recognized at all or gets recognized incorrectly by RFT ( or Reco
*For standalone SWT Apps refer :Testing Standalond SWT Applications
**Enabling the Flex application for Testing(It's old but still holds good) : Enabling Flex Application For Testing
***For List of Supported Domains refer :List of Supported Domains