Forum Discussion

Beyond_great's avatar
Beyond_great
Occasional Contributor
14 years ago

Whether it can auto install software packages that are builded by Installshield

Hi everyone,

I have an issue need to be solved. Whether testcomplete can auto install software packages that are builded by Installshield ? My colleagues don't think it is compatible with installshield, so I need a certain answer for that. Maybe guys can help me, if they are compatible for each other, could you send me a case to demo this function? Thanks!

6 Replies

  • tristaanogre's avatar
    tristaanogre
    Esteemed Contributor
    TestComplete can interact with any application that has a Windows GUI interface.  Whether or not it is seen as an "open" application is a different story but there are any number of posts up here on the forums that talk about running installers via TestComplete.
  • Meie,


    As far as I know, TestComplete works fine with InstallShield installation packages. It can simulate user actions on them and retrieve values from controls. Unfortunately, I don't have an example, but you can launch any installation and check this yourself.

  • Beyond_great's avatar
    Beyond_great
    Occasional Contributor
    Hi,

    Why the "open" applications are different ? Maybe they are more complex than the black box applications. If I test any application via TestComplete,  are there some different between white and black box applications?
  • Meie,


    "Open" means that TestComplete has access to internal objects, methods and properties of the tested application (the methods and properties that are defined in the application's source code). That is, the internal objects become available to the test engine as if they were available in the application code. Access to the application's internals lets you use internal methods and properties to perform very specific checks of an object's state or perform specific testing actions. Also, you can address objects in your tests using the names defined in the application. The testing approach that uses "Open Applications" is also called "white-box testing".


    "Black-box testing" means that TestComplete "sees" the application in the same way as the operating system "sees" it: it works with windows and controls, and you can neither call internal methods and properties, nor address the objects using names defined in the application code.


    "White-box testing" lets you do these and create more powerful and flexible tests and in most of cases it is a recommended approach for automated tests.


    The TestComplete help file contains a number of topics describing these concepts:

    White-Box Testing

    Open Applications

  • Beyond_great's avatar
    Beyond_great
    Occasional Contributor
    Alex,

    Thanks for the help. Sometimes, installshield process(msiexec.exe) can't display in Object Broswer, and I found the installshield is not an "open" application according to TestComplete user's guide. Therefore, I just only test the installer by recording and playing back user actions with TestComplete, but this may not be my colleagues' want.
  • Meie,


    Perhaps, you cannot see the InstallShield processes, because they are running under another user account. To view them, click the Show All User Processes and Show System Processes buttons in the Object Browser's toolbar. Also, if you are working under Windows Vista or Windows 7, run TestComplete with administrator permissions. For more information, you can read Testing Applications Running Under Another User Account and Testing Applications With TestComplete Under Windows Vista and Later Operating Systems in the TestComplete help.


    As for testing installations in white-box mode, well, generally, testing these applications includes simulating user actions on the InstallShield dialogs and checking their properties. Installation wizards don't include complex controls, and TestComplete's support for black-box testing is quite enough to check whether the installation passes successfully or fails.


    Why do you think you need to make your installations "Open" to test them? What are you going to do? Are there any actions you cannot perform? I ask about this, because there may be some alternative ways to do what you need.