Preparing C++Builder 2006 Applications for Testing

Applies to TestLeft 4.91, last modified on July 1, 2021

TestLeft exposes public, published, protected and private members of objects in C++Builder applications if the application is compiled with debug information. This topic explains how to include debug information into applications created with Borland C++Builder 2006.

Note: TestLeft is incompatible with tools that change the debug information format (for example, EurekaLog 7). We recommend that you disable such tools before compiling applications that will be tested with TestLeft.
  1. Open your project in Borland C++Builder 2006.

  2. Choose Project | Options from the main menu to open the Project Options dialog.

  3. Switch to the C++ Compiler (bcc32) | Optimizations category. In the radio group on the right, select the Optimize: Disable all optimizations (-Od) option:

  4. Switch to the Linker (ilink32) | Linking category and enable Full debug information (-v):

  5. Select the Linker (ilink32) | Path and Defines category and examine the Library search path. If the path contains the $(BDS)\lib\release folder, replace it with $(BDS)\lib\debug:

  6. We recommend that you turn off the Build with runtime packages option in the Packages category:

    If this property is selected, C++Builder creates Borland package library (.bpl) files when compiling the application. TestLeft cannot access debug information in these files and some controls. If this property is not selected, all information is included in a single executable and can be accessed by TestLeft.

    If, for some reason, you cannot turn off the Build with runtime packages option, TestLeft may not be able to get access to the application's internal methods and properties.
  7. Once you have completed these steps, click OK to save the changes and close the Project Options dialog.

  8. Re-build the application.

Note: C++Builder debug information is stored in .tds files. Make sure that the generated .tds files reside in the same folders as the appropriate modules of the application under test, otherwise TestLeft will not be able to access application internals.

Before delivering your application, remember to compile it without debug info to reduce the application size.

To make TestLeft recognize TMS Software VCL controls in the tested C++Builder application properly and obtain access to their properties and methods, we recommend that you re-compile the utilized TMS components with full debug information before including them in your C++Builder application. To learn how to prepare these components for C++Builder applications, see Preparing TMS Software VCL Components for C++Builder Applications.

See Also

Preparing C++Builder Applications for Testing

Highlight search results