Compartir a través de


Introducción a las pruebas unitarias

Use Visual Studio para definir y ejecutar pruebas unitarias para mantener el estado del código, garantizar la cobertura de código y buscar errores y errores antes de que los clientes lo hagan. Ejecute las pruebas unitarias con frecuencia para asegurarse de que el código funciona correctamente.

En este artículo, el código usa C# y C++, las ilustraciones se encuentran en C#, pero los conceptos y características se aplican a los lenguajes .NET, C++, Python, JavaScript y TypeScript.

Crear pruebas unitarias

En esta sección se describe cómo crear un proyecto de prueba unitaria.

  1. Abra el proyecto que desea probar en Visual Studio.

    Para mostrar una prueba unitaria de ejemplo, en este artículo se prueba un Hola mundo sencillo proyecto de consola de C# o C++ denominado HelloWorld. El código de ejemplo de este proyecto es el siguiente:

    namespace HelloWorld
    {
       public class Program
       {
          public static void Main()
          {
             Console.WriteLine("Hello World!");
          }
       }
    }
    
  2. En Explorador de soluciones, seleccione el nodo de solución. A continuación, en la barra de menús superior, seleccione ArchivoAgregarnuevo proyecto.

  3. En el cuadro de diálogo nuevo proyecto, busque el proyecto de prueba unitaria que se va a usar.

    Escriba test en el cuadro de búsqueda para buscar una plantilla de proyecto de prueba unitaria para el marco de pruebas que quiera usar, como MSTest (C#) o el proyecto De prueba unitaria nativa (C++) y selecciónelo.

    Los .NET idiomas de Visual Studio incluyen plantillas integradas para NUnit y xUnit. En C++, en este ejemplo, seleccione el proyecto Prueba unitaria nativa , que usa El marco de pruebas unitarias nativas de Microsoft. (Para usar otro marco de pruebas de C++, consulte Escritura de pruebas unitarias para C/C++). Para Python, consulte Configurar las pruebas unitarias en código Python para configurar el proyecto de prueba.

    Sugerencia

    En este artículo se describe cómo crear manualmente pruebas unitarias. Si desea generar pruebas automáticamente a partir del código existente, consulte Generar y ejecutar pruebas unitarias mediante pruebas de GitHub Copilot para .NET o para otros lenguajes, consulte Usar comandos de barra diagonal en GitHub Copilot

    Sugerencia

    En este artículo se describe cómo crear manualmente pruebas unitarias. Si desea generar pruebas automáticamente a partir del código existente, consulte Crear métodos de prueba unitaria de C# a partir de código o para otros lenguajes, consulte Usar comandos de barra en GitHub Copilot

    En la ilustración siguiente se muestra una prueba unitaria de MSTest, que se admite en .NET.

    Plantilla de proyecto de prueba unitaria en Visual Studio 2022

    Haga clic en Siguiente, elija un nombre para el proyecto de prueba y, a continuación, haga clic en Crear.

    El proyecto ha sido agregado a la solución.

    Screenshot que muestra un proyecto de prueba unitaria en Explorador de soluciones.

    Proyecto de prueba unitaria en el Explorador de soluciones

  4. En el proyecto de prueba unitaria, agregue una referencia al proyecto que desea probar haciendo clic con el botón derecho en Referencias o dependencias y, a continuación, elija Agregar referencia o Agregar referencia de proyecto.

  5. Seleccione el proyecto que contiene el código que probará y haga clic en Aceptar.

    Agregar referencia de proyecto en Visual Studio

  6. Agregue código al método de prueba unitaria.

    Por ejemplo, puede usar el código siguiente seleccionando la pestaña de documentación correcta que coincida con el marco de pruebas: MSTest, NUnit o xUnit (compatible solo con .NET) o C++ Microsoft Native Unit Test Framework.

    • MSTest
    • NUnit
    • xUnit
    • Marco de pruebas unitarias nativas de Microsoft
    using Microsoft.VisualStudio.TestTools.UnitTesting;
    using System.IO;
    using System;
    
    namespace HelloWorldTests
    {
       [TestClass]
       public class UnitTest1
       {
          private const string Expected = "Hello World!";
          [TestMethod]
          public void TestMethod1()
          {
             using (var sw = new StringWriter())
             {
                Console.SetOut(sw);
                HelloWorld.Program.Main();
    
                var result = sw.ToString().Trim();
                Assert.AreEqual(Expected, result);
             }
          }
       }
    }
    

Ejecutar pruebas unitarias

  1. Abra el Explorador de pruebas.

    Para abrir el Explorador de pruebas, elija Explorador depruebas en la barra de menús superior (o presione CtrlE, T).

  2. Ejecute las pruebas unitarias haciendo clic en Ejecutar todo (o presione CtrlR, V).

    Captura de pantalla que muestra el Explorador de pruebas.

    Ejecutar pruebas unitarias en el Explorador de pruebas

    Una vez completadas las pruebas, una marca de verificación verde indica que se ha superado una prueba. Un icono rojo "x" indica que se produjo un error en una prueba.

    Captura de pantalla que muestra los resultados de la prueba unitaria en el Explorador de pruebas.

    Revisar los resultados de las pruebas unitarias en el Explorador de pruebas

Sugerencia

Puede usar el Explorador de pruebas para ejecutar pruebas unitarias desde el marco de pruebas integrado (MSTest) o desde marcos de pruebas de terceros. Puede agrupar pruebas en categorías, filtrar la lista de pruebas y crear, guardar y ejecutar listas de reproducción de pruebas. También puede depurar pruebas y analizar el rendimiento de las pruebas y la cobertura de código.

Visualización de los resultados de pruebas unitarias dinámicas (Visual Studio Enterprise)

Si usa el marco de pruebas MSTest, xUnit o NUnit en Visual Studio 2017 o posterior, puede ver los resultados en directo de las pruebas unitarias.

Nota:

Para seguir estos pasos, se requiere Visual Studio Enterprise, junto con .NET código y uno de los marcos de prueba siguientes: MSTest, xUnit o NUnit.

  1. Active las pruebas unitarias dinámicas desde el menú Test eligiendo TestLive Unit TestingStart.

    Iniciar pruebas unitarias en vivo en Visual Studio 2022

  2. Vea los resultados de las pruebas dentro de la ventana del editor de código a medida que escribe y edita código.

    Captura de pantalla que muestra los resultados de las pruebas.

    Visualización de los resultados de las pruebas

  3. Haga clic en un indicador de resultados de prueba para ver más información, como los nombres de las pruebas que cubren ese método.

    Captura de pantalla que muestra los indicadores de resultados de la prueba.

    Elegir los indicadores de resultados de la prueba

Para obtener más información sobre las pruebas unitarias dinámicas, consulte Live Unit Testing.

Uso de un marco de pruebas de terceros

Puede ejecutar pruebas unitarias en Visual Studio mediante marcos de pruebas de terceros como NUnit, Boost o Google C++ Testing Framework, en función del lenguaje de programación. Para usar un marco de terceros:

  • Use el NuGet Administrador de paquetes para instalar el paquete NuGet para el marco de su elección.

  • (.NET) A partir de la versión 14.6 de Visual Studio 2017, Visual Studio incluye plantillas de proyecto de prueba preconfiguradas para marcos de prueba NUnit y xUnit. Las plantillas también incluyen los paquetes NuGet necesarios para habilitar la compatibilidad.

  • (C++) En Visual Studio 2017 y versiones posteriores, algunos marcos como Google C++ Testing Framework ya están incluidos. Para obtener más información, vea Write unit tests for C/C++ in Visual Studio.

Para agregar un proyecto de prueba unitaria:

  1. Abra la solución que contiene el código que desea probar.

  2. Haga clic con el botón derecho en la solución en Explorador de soluciones y elija Agregar>Nuevo proyecto.

  3. Seleccione una plantilla de proyecto de prueba unitaria.

    En este ejemplo, seleccione NUnit.

    plantilla de proyecto de prueba NUnit en Visual Studio 2022

    La plantilla de proyecto incluye referencias de NuGet a NUnit y NUnit3TestAdapter.

    La captura de pantalla que muestra las dependencias de NUnit NuGet en Explorador de soluciones.

    Dependencias de NuGet de NUnit en el Explorador de soluciones

  4. Agregue una referencia del proyecto de prueba al proyecto que contiene el código que desea probar.

    Haga clic con el botón derecho en el proyecto en Explorador de soluciones y seleccione Agregar>Reference. (También puede agregar una referencia desde el menú contextual del nodo Referencias o Dependencias ).

  5. Agregue código al método de prueba.

    Captura de pantalla que muestra el código en el archivo de prueba unitaria.

    Adición de código al archivo de código de prueba unitaria

  6. Ejecute la prueba desde el Explorador de pruebas o haga clic con el botón derecho en el código de prueba y elija Ejecutar pruebas (o CtrlR, T).

Pasos siguientes

Conceptos básicos de pruebas unitarias

Creación y ejecución de pruebas unitarias para código administrado

Escritura de pruebas unitarias para C/C++