Compartir por


Introducción a MSTest

La manera recomendada de crear un proyecto de MSTest es usar MSTest.Sdk, un SDK de proyecto de MSBuild que proporciona una experiencia de primera clase para realizar pruebas con MSTest. Incluye todos los valores predeterminados recomendados y simplifica la configuración del proyecto.

Creación de un proyecto con MSTest.Sdk

Para crear un proyecto de MSTest, establezca el atributo SdkMSTest.Sdk junto con la versión de MSTest en el archivo del proyecto.

<Project Sdk="MSTest.Sdk/4.1.0">

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
  </PropertyGroup>

</Project>

Nota:

4.1.0 se proporciona como ejemplo y se puede reemplazar por cualquier versión más reciente.

Para simplificar la administración de versiones en varios proyectos de prueba, se recomienda especificar la versión del SDK en un archivo deglobal.json en el nivel de solución:

<Project Sdk="MSTest.Sdk">

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
  </PropertyGroup>

</Project>
{
    "msbuild-sdks": {
        "MSTest.Sdk": "4.1.0"
    }
}

Para obtener más información, consulte Uso del SDK de proyecto de MSBuild.

Cuando se realiza build el proyecto, se restauran e instalan todos los componentes necesarios mediante el flujo de trabajo estándar de NuGet. Puede usar las mismas herramientas (por ejemplo, dotnet test o Visual Studio) que cualquier otro proyecto de prueba.

Sugerencia

De forma predeterminada, MSTest.Sdk usa el ejecutor de MSTest con Microsoft.Testing.Platform. Para obtener opciones de configuración avanzadas como perfiles de extensión, cambiar a VSTest o integrar con Aspire y Playwright, consulte Configuración del SDK de MSTest.

Alternativa: Uso del paquete NuGet MSTest

Si prefiere no usar MSTest.Sdk, puede usar el metapaquete NuGet de MSTest , que incluye:

  • MSTest.TestFramework, MSTest.TestAdapter y MSTest.Analyzers para la funcionalidad principal de MSTest.
  • Microsoft.NET.Test.Sdk para la integración de VSTest y la compatibilidad con el host de prueba.
  • Microsoft.Testing.Extensions.CodeCoverage y Microsoft.Testing.Extensions.TrxReport para las extensiones Microsoft.Testing.Platform (MTP).

Introducción a los paquetes NuGet

La funcionalidad MSTest se divide en varios paquetes NuGet:

Package Description
MSTest.TestFramework Contiene los atributos y clases que se usan para definir pruebas de MSTest.
MSTest.TestAdapter Contiene el adaptador de prueba que detecta y ejecuta pruebas de MSTest.
MSTest.Analyzers Contiene analizadores que le ayudan a escribir pruebas de alta calidad.

Nota:

Si va a crear un proyecto de infraestructura de prueba destinado a una biblioteca auxiliar para varios proyectos de prueba, instale MSTest.TestFramework y MSTest.Analyzers directamente en ese proyecto.

Tutoriales específicos para el lenguaje de programación

Para ver tutoriales detallados paso a paso en su lenguaje .NET preferido:

Proyectos de ejemplo

El equipo de MSTest mantiene proyectos de ejemplo en el repositorio microsoft/testfx que muestran varias características y escenarios:

Ejemplo Description Link
Simple1 Configuración básica del ejecutor de MSTest Ver en GitHub
DemoMSTestSdk Configuración del proyecto del SDK de MSTest Ver en GitHub
BlankUwpNet9App Pruebas de UWP con .NET 9 Ver en GitHub
BlankWinUINet9App Pruebas de WinUI 3 con .NET 9 Ver en GitHub
NativeAotRunner Compilación AOT nativa Ver en GitHub
RunInDocker Ejecución de pruebas en contenedor Ver en GitHub