Comparteix a través de


Extensión Bridge VSTest

Esta extensión proporciona una capa de compatibilidad con VSTest que permite a los marcos de pruebas seguir admitiendo la ejecución en modo VSTest (vstest.console.exe, habitualmente dotnet test, VSTest task en AzDo, Exploradores de pruebas de Visual Studio y Visual Studio Code...). Esta extensión se envía como parte del paquete Microsoft.Testing.Extensions.VSTestBridge.

Compatibilidad con VSTest

El propósito principal de esta extensión es ofrecer una experiencia de actualización sencilla y fluida para los usuarios de VSTest al permitir un modo dual en el que la nueva plataforma está habilitada y en paralelo se ofrece un modo de compatibilidad para permitir que los flujos de trabajo habituales sigan funcionando.

Soporte de configuración de ejecución

Esta extensión le permite proporcionar un archivo VSTest .runsettings, pero la plataforma no recoge todas las opciones de este archivo. Debajo se describen las opciones de configuración admitidas y no admitidas, las opciones de configuración y las alternativas para las opciones de configuración de VSTest más usadas.

Cuando lo habilita el marco de pruebas, puede usar --settings <SETTINGS_FILE> para proporcionar el archivo .runsettings.

Elemento RunConfiguration

El elemento RunConfiguration puede incluir los siguientes elementos. Ninguno de estos valores es respetado por Microsoft.Testing.Platform:

Nodo Descripción Motivo/ Solución alternativa
MaxCpuCount Esta configuración controla el nivel de paralelismo en el nivel de proceso. Use 0 para habilitar el paralelismo máximo de nivel de proceso. Cuando se usa Microsoft.Testing.Platform con MSBuild, esta opción se descarga en MSBuild. Cuando se ejecuta un único ejecutable, esta opción no tiene ningún significado para Microsoft.Testing.Platform.
ResultsDirectory Directorio en el que se colocan los resultados de las pruebas. La ruta de acceso es relativa al directorio que contiene el archivo .runsettings. Use la opción de línea de comandos --results-directory para determinar el directorio donde se colocarán los resultados de la prueba. Si el directorio especificado no existe, se crea. El valor predeterminado es TestResults en el directorio que contiene la aplicación de prueba.
TargetFrameworkVersion Esta configuración define la versión del marco o la familia del marco que se va a usar para ejecutar pruebas. Esta opción se omite. Las propiedades <TargetFramework> o <TargetFrameworks> MSBuild determinan el marco de trabajo de destino de la aplicación. Las pruebas se hospedan en la aplicación final.
TargetPlatform Esta configuración define la arquitectura que se va a usar para ejecutar pruebas. <RuntimeIdentifier> determina la arquitectura de la aplicación final que hospeda las pruebas.
TreatTestAdapterErrorsAsWarnings Suprime los errores del adaptador de prueba para convertirse en advertencias. Microsoft.Testing.Platform solo permite ejecutar un tipo de pruebas desde un único ensamblado, y si no se carga el marco de pruebas u otras partes de la infraestructura, se convertirá en un error no omitible, ya que significa que algunas pruebas no se pudieron detectar o ejecutar.
TestAdaptersPaths Una o varias rutas de acceso al directorio donde se encuentran los TestAdapters Microsoft.Testing.Platform no usa el concepto de adaptadores de prueba y no permite la carga dinámica de extensiones a menos que formen parte de la compilación y se registren en Program.cs, ya sea automáticamente a través de destinos de compilación o manualmente.
TestCaseFilter Filtro para limitar las pruebas que se ejecutarán. Para filtrar las pruebas, use la opción de línea de comandos --filter.
TestSessionTimeout Permite a los usuarios terminar una sesión de prueba cuando esta supera un tiempo de espera especificado. No hay ninguna opción alternativa.
DotnetHostPath Especifique una ruta de acceso personalizada al host dotnet que se usa para ejecutar el host de prueba. Microsoft.Testing.Platform no está realizando ninguna resolución adicional de dotnet. Depende completamente de cómo se resuelve dotnet, que se puede controlar mediante variables de entorno como DOTNET_HOST_PATH.
TreatNoTestsAsError Salga con código de salida distinto de cero cuando no se detecte ninguna prueba. Microsoft.Testing.Platform producirá un error de forma predeterminada cuando no se detecte ninguna prueba o se ejecute en una aplicación de prueba. Puede establecer cuántas pruebas espera encontrar en el ensamblado mediante el parámetro de línea de comandos --minimum-expected-tests, que tiene como valor predeterminado 1.

Elemento DataCollectors

Microsoft.Testing.Platform no usa recopiladores de datos. En su lugar, tiene el concepto de extensiones en proceso y fuera de proceso. Cada extensión se configura mediante su archivo de configuración respectivo o a través de la línea de comandos.

Lo más importante es suspender y bloquear la extensión, y la extensión de cobertura de código.

Elemento LoggerRunSettings

Los registradores de Microsoft.Testing.Platform se configuran a través de parámetros de línea de comandos o por valores en el código.

Compatibilidad con filtros VSTest

Esta extensión también ofrece la capacidad de usar el mecanismo de filtrado VSTest para detectar o ejecutar solo las pruebas que coinciden con la expresión de filtro. Para obtener más información, consulte la sección Detalles de la opción de filtro o para obtener detalles específicos del marco, consulte la página Ejecución de pruebas unitarias selectivas.

Cuando se habilita mediante el marco de pruebas, puede usar --filter <FILTER_EXPRESSION>.