Preparing C++Builder 2007 Applications for Testing

Applies to TestLeft 15.40, last modified on March 17, 2022

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 CodeGear C++Builder 2007.

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 CodeGear C++Builder 2007.

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

  3. Switch to the C++ Compiler | Optimizations category. In the radio group on the right, select None:

  4. Switch to the Linker | Linking category and enable the Full debug information option in the Linking group:

  5. Switch to the Path and Defines category and examine the Library Path. If the path contains the $(BDS)\lib\release folder, replace it with $(BDS)\lib\debug:

  6. It is recommended that you turn off the Build with runtime packages option in the Packages settings group:

    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 information in order 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