I've been using QTP 11.0 on my PC quite a long time and had no problem with Java-apps (Java 7 Update 21 x86) identification (OS Windows 7 Pro 64-bit). But when I tried to install QTP on the server through RDP (also running under OS Windows 7 Pro 64-bit) I came across a problem with identification of java objects:
Java objects identified as OS Windows objects
So Java objects are identified as OS Windows objects (expected: JavaWindow --> JavaDialog).
If someone knows what to do please help!
Any good advice is also appreciated!
Expected result:
Java object could be expected in details
RESEARCHES TILL NOW
First attempt
I have installed QTP 11 patch QTP_00699
for Java from all QTP 11 Patches (downloadable from HP directly). No result.
Also did not expect any result cause I'm testing java 32-bit app (and on my PC it works fine without patch), but still there is a hope that it could change registry or system values in a proper way (maybe...).
Second attempt
Reversing java environment variables path (_JAVA_OPTIONS & IBM_JAVA_OPTIONS) and starting java-app from console prompt set to java bin directory
C:\Program Files (x86)\Java\jre7\bin>javaws "C:\_qtp\testapp.jnlp"
According to the post in HP UFT Community Home Object Spy sees a java app as window class instead of javawindow class?. No result.
ALSO: the same action on my PC lead to QTP not being able to start.
Third attempt
Editing system registry. According to the post in HP UFT Community Home QTP 11.00 not identifying java objects properly.
Difference I've found there is no QuickTest Professional
folder in HKEY_LOCAL_MACHINE\Software\Mercury Interactive
so I can not save anything, but I am happy file is deleted beforehand :) (on my local PC there is even no Mercury Interactive
folder in HKEY_LOCAL_MACHINE\Software\
)
And nothing was found for "%appdata%\HP" so there is nothing to rename! :) (my local PC has it)
After repair - No result
Fourth attempt
- Uninstall QTP patch and QTP
- One more time Third attempt
May be repair helped and:
QuickTest Professional
folder was found inHKEY_LOCAL_MACHINE\Software\Wow6432Node\Mercury Interactive
so deleted it there.QuickTest Professional
was found for "%appdata%\HP" so renamed it.- Reboot
- Install QTP (tested java-app visibility - No result)
- Install QTP patch QTP_00699
Support Testing on 64Bit Applications
. No result. - Install QTP patch QTP_00709
Updates for HP QTP 11.00 [Critical]
. No result.
Fifth attempt
Reinstall JRE 1.7.21. No result.
I do not downgrade to 1.6 because 1.7 version is working fine on my PC with the same QTP installation. (Still I tried: did not help)
1 Answer 1
TLDR: Java v1.8 was installed on the server (It is not supported by QTP 11.0, only starting from UFT 12.02) check QTP/UFT vs Java JDK Support Matrix.
DETAILS
How to check
- Go to
Start
-->Control Panel
and click onJava [XX-bit]
. On theJava Control Panel
select tabJava
and press the buttonView...
On my local PC (Java is recognized by QTP):
And on the server:
Disabling checkbox Enabled
against platform Java 1.8
solves the problem of Java objects recognition in QTP 11.0.
There were two folders in
C:\Program Files (x86)\Java
directory:- jre1.8.0_65
- jre7
In
Java Console Log
:
Why this problem could happen
Java 1.8 was installed some wierd way. And I paid no attention to support matrix cause it was obvious to me that I use the same version on local PC and on server. Why?
- On app starting time it was always this picture:
Don't you know it's Java 1.8 starting right now :)
As you know from the Second attempt of this question I started jnlp-file right from the jre7 directory:
C:\Program Files (x86)\Java\jre7\bin>javaws "C:_qtp\testapp.jnlp"
There was only Java 7 Update 21 on the
Programs and Features
panel:
Explore related questions
See similar questions with these tags.