Pruebas unitarias y C++
Actualización: noviembre 2007
Las pruebas unitarias se pueden utilizar en Visual C# y en Visual Basic.
Nota: |
---|
Existen algunas restricciones en cuanto a la generación de pruebas unitarias para tipos genéricos y métodos genéricos en Visual C# y Visual Basic. Para obtener más información, vea Pruebas unitarias y tipos genéricos. |
También se pueden utilizar en Visual C++ según lo que se especifica en este tema.
La manera en que puede utilizar Visual C++ con pruebas unitarias depende de la función que desempeñe Visual C++ en su solución. Estos son los casos posibles:
Utiliza pruebas unitarias para probar código que se ha escrito en Visual C++. Para obtener más información, vea Código de producción de Visual C++.
El proyecto de prueba contiene pruebas unitarias que se han escrito en Visual C++. Para obtener más información, vea Proyectos de prueba y Visual C++.
Piensa generar automáticamente pruebas unitarias a partir de código que se ha escrito en Visual C++. Para obtener más información, vea Generación de código y Visual C++.
Código de producción de Visual C++
Tenga en cuenta lo siguiente sobre el código que desea probar, al que se hace referencia aquí como código de producción.
No administrado. Si el código de producción es no administrado, es necesario que sea invocable desde una biblioteca estática, un archivo .obj o un punto de entrada de un archivo DLL. Los métodos de clase incrustados dentro de un archivo ejecutable o un archivo DLL no sirven porque Visual C++ no administrado no ofrece el mecanismo de descubrimiento en tiempo de ejecución, la reflexión. Por tanto, sólo funcionarán los mecanismos de enlace nativos tradicionales.
Mixto Un proyecto mixto es un proyecto que utiliza la opción del compilador /clr. Si su código de producción es mixto y no es un archivo ejecutable, se puede llamar a cualquier método invocable incluido en el código, y se puede probar dicho código.
Seguro o puro. Si su código de producción es seguro o puro, se puede llamar a cualquier método de ensamblado invocable y se puede probar dicho método, en un archivo ejecutable o DLL.
Proyectos de prueba y Visual C++
Un proyecto de prueba tiene recursos diferentes dependiendo de las opciones del compilador que se hayan establecido para el proyecto. Para obtener más información, vea Opciones del compilador y /clr (Compilación de Common Language Runtime). En las secciones siguientes, se describen los recursos disponibles para las distintas opciones de configuración del compilador.
No administrado
No se puede utilizar Visual C++ no administrado, o nativo, como lenguaje de programación para un proyecto de prueba.
Mixto
Un proyecto mixto es un proyecto que utiliza la opción del compilador /clr. Este tipo de proyecto de prueba proporciona la capacidad de probar el código de producción siguiente:
Bibliotecas estáticas nativas
Puntos de entrada de archivos DLL nativos
Archivos .obj independientes
Ensamblados de archivos DLL en modo mixto con métodos invocables. Aquí no se incluyen los archivos ejecutables, ya que contienen código no administrado, y el código ejecutable no administrado normalmente no se habilita para la dirección base.
Cualquier método administrado invocable. Se trata de código que se compila con la opción del compilador /clr:pure o /clr:safe.
Seguro o puro
Si utiliza la opción del compilador /clr:pure o la /clr:safe con su proyecto de prueba, le ofrece la posibilidad de probar cualquier método administrado invocable. Esto implica código de producción que se compila con la opción del compilador /clr, /clr:pure o /clr:safe.
Generación de código y Visual C++
Puede generar pruebas unitarias en un proyecto de prueba de Visual C++. Puede generar estas pruebas a partir de un proyecto de código de producción de Visual C++. Tenga en cuenta lo siguiente:
Proyecto de código de producción. Si su código de producción está escrito en Visual C++, sólo puede generar pruebas unitarias si el producto utiliza la opción del compilador /clr:safe.
Proyecto de prueba. La generación de código puede dar lugar a pruebas unitarias en cualquiera de los tipos de proyecto de prueba de Visual C++: mixto, seguro y puro. El tipo de proyecto predeterminado que se genera es /clr:safe. Si desea cambiar el proyecto a /clr o /clr:pure, puede hacerlo cuando desee mediante las opciones del compilador de Visual C++. Para obtener más información, vea /clr (Compilación de Common Language Runtime).
Vea también
Tareas
Cómo: Crear una prueba unitaria
Conceptos
Pruebas unitarias y tipos genéricos