2012-04-02 8 views
5

Tengo un proyecto de DUnit que no se compilará como consola si agrego algunas unidades.
El Proyecto (dpr) es creado por el Asistente y se define CONSOLE_TESTRUNNER.Qué puede hacer que el compilador no produzca una salida de consola

{$IFDEF CONSOLE_TESTRUNNER} 
{$APPTYPE CONSOLE} 
{$ENDIF} 

begin 
    Application.Initialize; 
    if IsConsole then // <-- IsConsole is set to False. 
    with TextTestRunner.RunRegisteredTests do 
     Free 
    else 
    GUITestRunner.RunRegisteredTests; 
end. 

Las unidades que lo hacen fallar incluyen algunos componentes VCL pero no se ejecutan pruebas en ellos.
Incluso he intentado configurar la opción de vinculación pero no hizo ninguna diferencia.
¿Alguien ha experimentado un problema similar?
Solo para aclaración: Este proyecto es Win32 en Delphi 2010.

Respuesta

5

Ese código funciona bien para mí. Puedo pensar en dos razones por las cuales Delphi no está produciendo una aplicación de consola:

  1. CONSOLE_TESTRUNNER no está definido.
  2. Tiene {$APPTYPE GUI} en algún lugar del código de su proyecto.

Estoy razonablemente seguro de que el elemento 2 anterior es el motivo de su problema.

+3

Gracias fue el APPTYPE. Arrghhh. –

Cuestiones relacionadas