Requirements for Testing Visual C++ Applications

Applies to TestComplete 15.20, last modified on January 19, 2022

This topic describes requirements that should be met in order for TestComplete to be able to test unmanaged Visual C++ applications properly. If something goes wrong, check the requirements listed in the following sections:

Visual C++ Support Plugins

Core Visual C++ Plugin

TestComplete support for testing Visual C++ applications is provided by the following plugins:

  • Visual C++ Application Support

  • Open Applications

  • Desktop Testing

These plugins are installed and enabled automatically. Therefore, you can test most Visual C++ applications right out-of-box, without any additional configuration.

You can check to see if these plugins are active by selecting File | Install Extensions from the TestComplete main menu. If one of these plugins is not available, you need to run the TestComplete installation in the Repair mode. For more information about changing installed TestComplete features, see Installing Extensions.

To use these plugins, you must have a license for TestComplete Desktop module.

Plugins for Visual C++ Controls Automation

The TestComplete Desktop module also includes pre-installed plugins for automated testing of standard and third-party Visual C++ controls. These plugins provide test objects, methods and properties for automating various operations on Visual C++ controls, getting their contents, state and so on.

Just like core support plugins, these plugins are also installed and enabled automatically.

You can verify that these plugins are active using the File | Install Extensions dialog. To re-install the plugins, run the TestComplete installation in the Repair mode.

Note: Support for Visual C++ controls that are wrappers for standard Win32 controls is built into TestComplete.

Compilation Notes

If you want to get access to public properties and methods of Microsoft Foundation Classes, make sure that your application was compiled with the runtime type information (RTTI).

If you want to use public, protected and private fields and methods of your Visual C++ application from your tests, you must compile your application with external debug information. In TestComplete, access to these properties is provided by Debug Info Agentâ„¢, which is enabled by default.

Tip: If needed, you can check whether Debug Info Agentâ„¢ is enabled on the Project Properties - Debug Agent Options or Default Project Properties - Debug Agent Options page.

If your application was compiled to use MFC or wxWidgets in statically linked libraries, you must enable the Read debug information for statically linked libraries project option. Otherwise, TestComplete will be unable to get access to some of the application's internals.

If your Visual C++ application is compiled with dynamically linked libraries, TestComplete cannot get access to the protected and private internals of the application.

Testing Visual C++ Applications Running Under Another User Account

To test Visual C++ applications that run under a different user account, you need to configure certain COM Security settings on the computer. For details, see Settings for Testing Open Applications in RunAs Mode.

In addition, TestComplete must be launched with administrator privileges.

See Also

Testing Visual C++ Applications
Supported Controls
Installing Extensions

Highlight search results