Forum Discussion

automateable's avatar
automateable
Occasional Contributor
6 years ago

Compiling Delphi XE with Debug Info with Optimization off and Use of debug .dcus

Based on this Link , SmartBear recommends to compile delphi xe application with debug info with: 

 Optimization set to false and

 - Use debug .dcus set to True

 

 

However, there is no explaination as to why this is recommended. 

Are these required for TestComplete to function properly? 

 

Thanks

1 Reply

  • AlexKaras's avatar
    AlexKaras
    Champion Level 3

    Hi,

     

    To get an official reply I would recommend to contact Support directly via the https://support.smartbear.com/message/?prod=TestComplete form.

     

    To my understanding:

    -- Debug DCUs are required if you need to get access to objects other than those defined and provided by your tested application. You may provide only certain debug DCUs in order to decrease memory requirements and improve performance of TestComplete;

    -- Disabled optimization is required because optimizer may change application internals so that they may not match information from the debug info file. Visually in Delphi IDE the result of such changes may be observed, for example, during code debugging in Step mode when not expected lines of source code might be highlited while stepping into/over (especially for loops, etc.). In TestComplete the result may be different depending on the changes provided by the optimizer. For example, incorrect property values may be reported. Or tested application may even crash if some area that should be safe to interact with according to the debug info was moved by the optimizer.