Forum Discussion

JeffSm's avatar
JeffSm
Contributor
15 years ago

clicking Next buttons in InstallShield

Hi,



I'm a new user to TestComplete 7.51.  I'm experimenting with something fairly simple (or so I thought).  I'm launching an installer, and clicking through a series of buttons to install an application.  There are a couple Next buttons that are not getting executed when I run the script (recorded in jscript).  If during script reply I manually click the Next buttons, the script picks up and executes the Install and Finish buttons.  I've tried all sorts of stuff to make this work, but I'm having no luck.  Any suggestions?  Here is the script as it was recorded in jscript:




function Test1()


Test1()

{


var sysTreeView32;


var wndMsiDialogCloseClass;


var btnNext;


sysTreeView32 = Aliases.Explorer.wndExploreWClass.BaseBar.ReBarWindow32.SysTreeView32;


sysTreeView32.ClickItem("|Desktop|My Computer|Local Disk (C:)|Temp|Configure30.1110.0330");


TestedApps.Configure30Installer.Run(1, true);


wndMsiDialogCloseClass = Aliases.MSIEXEC.wndMsiDialogCloseClass;


btnNext = wndMsiDialogCloseClass.btnNext;


btnNext.ClickButton();


btnNext.ClickButton();


wndMsiDialogCloseClass.btnInstall1.ClickButton();


wndMsiDialogCloseClass.btnFinish1.ClickButton();


sysTreeView32.ClickItem("|Desktop|My Computer|Local Disk (C:)|Program Files|Philips|HeartStart|Configure");


TestedApps.Configure.Run(1, true);


}



When I map the objects, the first button full name is:

Sys.Process("MSIEXEC").Window("MsiDialogCloseClass", "HeartStart Configure - InstallShield Wizard", 1).Window("Button", "&Next >", 1)

the second:

Sys.Process("MSIEXEC").Window("MsiDialogCloseClass", "HeartStart Configure - InstallShield Wizard", 1).Window("Button", "&Next >", 1)



Thanks!

Jeff


1 Reply

  • Hi Jeff,




    When the installation starts, there are several processes having the same "msiexec" name, and the process taken by TestComplete can fail to contain the needed window. To avoid this problem, you can modify the NameMapping scheme and specify the required children for the needed process. See the "Specifying Child Objects Required for Mapped Object Identification" help topic for details. Also, you need to avoid using the Index property for mapping the installation's main form and add the Visible property equal to True to the mapping criteria. Please note that the value of the Caption property for the main form can change. You can use wildcards to make your NameMapping scheme more reliable.




    If the suggestions above do not help, please zip the entire project suite folder along with logs of the test execution and send us the archive via our Contact Support web form: