Compartir a través de


Pruebas en .NET

En este artículo se presenta el concepto de prueba y se muestra cómo se pueden usar diferentes tipos de pruebas para validar el código. Hay varias herramientas disponibles para probar aplicaciones .NET, como .NET CLI o Integrated Development Environments (IDE).

Tipos de prueba

Las pruebas automatizadas son una excelente manera de asegurarse de que el código de la aplicación hace lo que pretenden sus autores. En este artículo se tratan las pruebas unitarias, las pruebas de integración y las pruebas de carga.

Pruebas unitarias

Una prueba unitaria es una prueba que ejerce componentes o métodos de software individuales, también conocidos como "unidad de trabajo". Las pruebas unitarias solo deben probar el código dentro del control del desarrollador. No se usan para comprobar problemas con la infraestructura. Los problemas de infraestructura incluyen la interacción con bases de datos, sistemas de archivos y recursos de red.

Para obtener más información sobre la creación de pruebas unitarias, consulte Herramientas de pruebas.

Pruebas de integración

Una prueba de integración difiere de una prueba unitaria en que evalúa la capacidad de dos o más componentes de software para funcionar juntos, lo que también se conoce como su "integración". Estas pruebas abordan un espectro más amplio del sistema en pruebas, mientras que las pruebas unitarias se centran en componentes individuales. A menudo, las pruebas de integración incluyen problemas de infraestructura.

Pruebas de carga

Una prueba de carga pretende determinar si un sistema puede controlar una carga especificada o no. Por ejemplo, el número de usuarios simultáneos que usan una aplicación y la capacidad de la aplicación para controlar las interacciones con capacidad de respuesta. Para obtener más información sobre las pruebas de carga de las aplicaciones web, consulte ASP.NET Core pruebas de carga y esfuerzo.

Consideraciones de prueba

Tenga en cuenta que hay procedimientos recomendados para la escritura de pruebas. Por ejemplo, Desarrollo guiado por pruebas (TDD) es cuando se escribe una prueba unitaria antes del código que se debe comprobar. TDD es como crear un esquema para un libro antes de escribirlo. La prueba unitaria ayuda a los desarrolladores a escribir código más sencillo, legible y eficaz.

Herramientas de prueba

Al ejecutar pruebas en .NET, hay dos componentes implicados: la plataforma de prueba y el marco de pruebas.

Plataformas de prueba

La plataforma de prueba es el motor que ejecuta pruebas y se comunica con herramientas como LOS IDE y la CLI.

Use La introducción a las plataformas de prueba para comprender las diferencias entre VSTest y Microsoft.Testing.Platform y elegir la mejor plataforma para su escenario.

Para obtener instrucciones sobre la migración, consulte Migración de VSTest a Microsoft.Testing.Platform.

Marcos de pruebas

El marco de pruebas se construye sobre la plataforma de pruebas. Define el conjunto de atributos y API que están disponibles para usted, como autor de pruebas. Normalmente funciona con un adaptador de prueba, que actúa como una capa de comunicación entre el marco de pruebas y la plataforma de prueba. Los marcos de pruebas más populares son MSTest, NUnit, TUnit y xUnit.net.

MSTest (herramienta de pruebas de Microsoft)

MSTest es el marco de pruebas de Microsoft para todos los lenguajes de .NET. Es extensible y funciona con .NET CLI, Visual Studio, código de Visual Studio y rider. Admite VSTest y Microsoft.Testing.Platform.

Para obtener más información, consulte los siguientes recursos:

NUnit

NUnit es un marco de pruebas unitarias para todos los lenguajes de .NET. Inicialmente, NUnit se ha migrado desde JUnit y la versión de producción actual se ha reescrito con muchas características nuevas y compatibilidad con una amplia gama de plataformas .NET. Es un project de la .NET Foundation. Admite VSTest y Microsoft.Testing.Platform.

Para obtener más información, consulte los siguientes recursos:

TUnit

TUnit se basa completamente en Microsoft.Testing.Platform y no admite VSTest. Para obtener más información, consulte la documentación de TUnit.

xUnit.net

xUnit.net es una herramienta gratuita de pruebas unitarias centradas en la comunidad y de código abierto para .NET. El inventor original de NUnit v2 escribió xUnit.net. xUnit.net es la tecnología más reciente para pruebas unitarias .NET aplicaciones. También funciona con ReSharper, CodeRush y TestDriven.NET. xUnit.net es una project de la .NET Foundation y opera bajo su código de conducta. Admite VSTest y Microsoft.Testing.Platform.

Para obtener más información, consulte los siguientes recursos:

Ejecución de pruebas

CLI de .NET

Puede ejecutar pruebas unitarias desde todos los proyectos de prueba de una solución mediante el comando .NET CLI con el comando dotnet test. La CLI de .NET expone la mayor parte de la funcionalidad que los Entornos de Desarrollo Integrado (IDE) hacen disponibles a través de interfaces de usuario. La CLI de .NET es multiplataforma y está disponible para su uso como parte de los procesos de integración y entrega continuas. La CLI de .NET se usa con procesos con scripts para automatizar tareas comunes.

IDE

Tanto si usa Visual Studio, Visual Studio Code o Rider, hay interfaces gráficas de usuario para probar la funcionalidad. Hay más características disponibles para los IDE que la CLI, por ejemplo, Live Unit Testing. Para obtener más información, consulte Incluir y excluir pruebas con Visual Studio.

Consulte también

Para obtener más información, consulte los artículos siguientes: