Ask a Question

TE8 - unable to recognize a window of Installshield exe

jsr_78
Occasional Contributor

TE8 - unable to recognize a window of Installshield exe

Hi Everyone,


 


We have setup/build file that was written using Install shied.


 


I have written a script in “Test Complete 8 (using VB script)” to install that setup/build file to our testing pc’s (Windows XP).


 


For some reason Test execute 8 is not able to recognize a window of install shield when it is displayed. But when I debug or run the same script from Test complete 8 it recognize the window and works fine.


 


I have tried the same thing using TC7 & TE7 and result is the same (i.e. TE7 doesn’t recognize the window where TC7 works fine.)


 


Below is the statement of the script for the window I am looking for:


 


If (Sys.Process("MSIEXEC", 2).WaitWindow("MsiDialogCloseClass", "All New Mortgage Brain - InstallShield Wizard", 1, 5000).Exists) Then Sys.Process("MSIEXEC", 2)..Window("MsiDialogCloseClass", "All New Mortgage Brain - InstallShield Wizard", 1).Window("Button", "&Next >", 1).ClickButton


End if


The window which I looking for is marked in red colour above.


The error which I am getting is:


 Missing Object














Alias:



MSIEXEC.wndMsiDialogCloseClass



Mapping item:



Sys.MSIEXEC.wndMsiDialogCloseClass



 


I have tried using Recording and playback even that didn’t work  when I run the script from TE8


Please help me in this.




Regards,

Srinivas

18 REPLIES 18


Hi Srinivas,





The Microsoft Installed creates a number of processes when working, and only one of them contains the installed GUI. The most probable cause of the problem is that the script tries to work with a wrong instance of the MSIEXEC process.





If you use Name Mapping in your tests, you can use the Required Children feature. To do this, find the MSIEXEC mapping name in the Mapped Objects tree of the Name Mapping editor, remove the Index property from the list of the mapping properties, open the Required Children panel and check the wndMsiDialogCloseClass item. You can find more information on this feature in the Specifying Child Objects Required for Mapped Object Identification help topic.





Please let me know whether this information helps.
--
Dmitry Nikolaev

Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
jsr_78
Occasional Contributor

Hi,



Thanks for your reply. it didn't helped. i am still stuck with that problem.



Thanks,

Srinivas


Hi Srinivas,





In this case, please reproduce the problem, pack the entire project suite folder and send me the archive. We will look into the project and the execution results.
--
Dmitry Nikolaev

Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
jsr_78
Occasional Contributor

Hi,



Please find the project suite attached.



In that project suite i am running. The problem is in the project "Install" and script need to look is "Standalone_install " and procedure is "Test2"



Thanks,

Srinivas


Hi Srinivas,





As far as I can see, the MSIEXEC and MSIEXEC.wndMsiDialogCloseClass objects are mapped in your project by all possible properties. I believe that TestComplete never can find these objects since there are a lot of dynamic properties. Please use the minimum set of properties that are enough to uniquely identify an object.





I recommend that you viewed the Creating Reliable Tests For Dynamic Objects with Name Mapping video describing how to use the Name Mapping feature of the tool.





If the above information does not help, please reproduce the problem by executing your test in order to generate a log file. Then pack the entire project suite folder and post it here again.
--
Dmitry Nikolaev

Did my reply answer your question? Give Kudos or Accept it as a Solution to help others. ⬇️⬇️⬇️
amit_barve
Occasional Contributor

Hi,

I am trying to script the installation of Drivers of device. I have set it as Tested app but i am unable to identify its objects for example NEXT,CANCEL buttons.

I have tried by using Object Spy but no use.



Would you check.



Regards,

Amit
TanyaYatskovska
SmartBear Alumni (Retired)

Hi Amit,

 


You can try using the MSAA technology to improve the object recognition in TestComplete. Please refer to the "Improving Object Recognition" article for more information.


 

---------
Tanya Yatskovskaya
SmartBear Community and Education Manager



AlexKaras
Community Hero

Hi Amit,



In addition to Tanya's reply: are you automating installation or checking the installer?

If you just need to install the software, you may consider to do this using command line (e.g. something like "msiexec /i DriversPackage.msi"). Quite often unattended command-line approach works faster and is more reliable than UI-based installation.
Regards,
  /Alex [Community Hero]
____
[Community Heroes] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Heroes]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Hero] signature is used with permission by SmartBear Software.
https://community.smartbear.com/t5/custom/page/page-id/hall-of-fame
================================
amit_barve
Occasional Contributor

Hi Tanya and Alexei,

Thanks For your support , Now i am able to recognise objects.





Thanks & Regards,

Amit
cancel
Showing results for 
Search instead for 
Did you mean: