Compartir por


Preguntas más frecuentes sobre el Explorador de pruebas de Visual Studio

Descubrimiento de pruebas dinámicas

El Explorador de pruebas no detecta mis pruebas definidas dinámicamente (por ejemplo, teorías, adaptadores personalizados, rasgos personalizados e instrucciones #ifdef). ¿Cómo puedo asegurarme de que detecta estas pruebas?

Compile el proyecto para ejecutar la detección basada en ensamblaje.

La detección de pruebas en tiempo real es la detección de pruebas basada en el origen. No puede detectar pruebas que usen teorías, adaptadores personalizados, rasgos personalizados, instrucciones #ifdef y mucho más porque se definen en tiempo de ejecución. Se requiere una compilación para que estas pruebas se puedan detectar con precisión.

En Visual Studio 2017, versión 15.6 y posteriores, la detección basada en ensamblados (el detecdor tradicional) solo se ejecuta después de las compilaciones. Esta configuración significa que la detección de pruebas en tiempo real busca tantas pruebas como pueda mientras edita. La detección basada en ensamblados permite que las pruebas definidas dinámicamente aparezcan después de una compilación.

La detección de pruebas en tiempo real mejora la capacidad de respuesta, pero aún le permite obtener resultados completos y precisos después de una compilación.

Signo más (más) en el Explorador de pruebas

¿Qué significa el símbolo más que aparece en la línea superior del Explorador de pruebas?

El signo más (+) indica que se pueden detectar más pruebas después de una compilación cuando se lleva a cabo una detección basada en ensamblados. Este símbolo aparece si se detectan pruebas definidas dinámicamente en el proyecto.

Captura de pantalla que muestra una línea de resumen con un símbolo más.

Detección de pruebas en tiempo real

Las pruebas ahora aparecen en el Explorador de pruebas mientras escribo, sin necesidad de compilar mi proyecto. ¿Qué ha cambiado?

Esta característica se denomina Detección de pruebas en tiempo real. Usa un analizador de Roslyn para buscar pruebas y rellenar el Explorador de pruebas en tiempo real, sin necesidad de compilar el proyecto. Para obtener más información sobre el comportamiento de descubrimiento de pruebas para pruebas definidas dinámicamente, como teorías o rasgos personalizados, consulte Dynamic test discovery mencionado anteriormente en este artículo.

Compatibilidad con la detección de pruebas en tiempo real

¿Qué lenguajes y marcos de pruebas pueden usar la detección de pruebas en tiempo real?

detección de pruebas en tiempo real solo funciona para los lenguajes administrados (C# y Visual Basic), ya que se compila a través del compilador de Roslyn. Por ahora, la detección de pruebas en tiempo real solo funciona para los marcos xUnit, NUnit y MSTest.

Registros del Explorador de pruebas

¿Cómo puedo activar los registros para el Explorador de pruebas?

Abra el panel Opciones de herramientas>, expandala secciónTodas las pruebas de configuración> y configure los valores de nivel de registro.

Abra el cuadro de diálogo Opciones de herramientas>, expanda la sección Probar> y configure las opciones de registro.

Detección de pruebas de UWP

¿Por qué mis pruebas en proyectos de UWP no se detectan hasta que implemento mi aplicación?

Las pruebas de la Plataforma universal de Windows (UWP) tienen como destino un entorno de ejecución diferente cuando se implementa la aplicación. Para buscar pruebas con precisión para proyectos de UWP, no solo debes compilar el proyecto, sino también implementarlo.

Ordenación del Explorador de pruebas

¿Cómo funciona la ordenación de los resultados de las pruebas en la vista de jerarquía?

La vista de jerarquía ordena las pruebas alfabéticamente, no por resultado. La configuración de agrupamiento anterior ha ordenado las pruebas por resultados y, después, alfabéticamente. Para habilitar la ordenación por resultado, haga clic con el botón derecho en el encabezado de columna en el Explorador de pruebas, habilite la columna Estado y, a continuación, seleccione el encabezado de columna Estado para aplicar la ordenación en esa columna. Puede proporcionar comentarios sobre el diseño en esta incidencia de GitHub.

Vista de jerarquía del Explorador de pruebas

En la vista de jerarquía, hay iconos de pruebas superadas, no superadas, omitidas y no ejecutadas junto a las agrupaciones de nodo primario. ¿Qué significan estos iconos?

Los iconos situados junto a Project, Espacio de nombresy Agrupación de clase muestran el estado de las pruebas dentro de cada agrupación. Consulte la tabla siguiente.

Tabla de iconos de jerarquía del Explorador de pruebas.

Búsquedas por ruta de archivo

¿Por qué ya no hay un filtro de ruta de acceso de archivo en el cuadro de búsqueda del Explorador de pruebas?

El filtro de ruta de acceso de archivo del cuadro de búsqueda del Explorador de pruebas se quitó en Visual Studio 2017, versión 15.7. Esta característica tenía un uso bajo y el Explorador de pruebas puede recuperar métodos de prueba más rápido al dejarla fuera. Si este cambio interrumpe el flujo de desarrollo, háganoslo saber enviando comentarios sobre Developer Community.

Eliminación de interfaces no documentadas

Algunas API relacionadas con pruebas ya no están presentes en Visual Studio 2019. ¿Qué ha cambiado?

En Visual Studio 2019, se quitarán algunas API de ventana de prueba marcadas anteriormente como públicas, pero que nunca se documentaron oficialmente. Se marcaron como en desuso en Visual Studio 2017 para proporcionar a los mantenedores de extensión una advertencia temprana. Hasta donde sabemos, muy pocas extensiones encontraron estas APIs y dependieron de ellas. Incluyen IGroupByProvider, IGroupByProvider<T>, KeyComparer, ISearchFilter, ISearchFilterToken, ISearchTokeny SearchFilterTokenType.

Si este cambio afecta a la extensión, háganoslo saber mediante la presentación de un error en Developer Community.

Referencia de NuGet del adaptador de prueba

¿Por qué no se ejecutan mis pruebas en Visual Studio 2017 versión 15.8, aunque se detecten?

Todos los proyectos de prueba deben incluir la referencia del adaptador de prueba de .NET NuGet en su archivo .csproj. Si no lo hacen, la siguiente salida de prueba aparece en el proyecto si la detección de una extensión del adaptador de prueba se inicia después de una compilación o si intenta ejecutar las pruebas seleccionadas:

El proyecto de prueba {} no hace referencia a ningún adaptador nuGet de .NET. Es posible que la detección o ejecución de pruebas no funcionen para este proyecto. Se recomienda hacer referencia a adaptadores de prueba de NuGet en cada proyecto de prueba de .NET de la solución.

En lugar de usar las extensiones del adaptador de prueba, los proyectos deben usar paquetes de NuGet del adaptador de prueba. Este requisito mejora considerablemente el rendimiento y provoca menos problemas con la integración continua. Obtenga más información acerca del desuso de las extensiones del adaptador de pruebas de .NET en las notas de la versión.

No se encontró TestContainer para UWP

¿Por qué mis pruebas para UWP ya no se ejecutan en Visual Studio 2017 versión 15.7 y versiones posteriores?

Los proyectos de prueba recientes de UWP especifican una propiedad de compilación que permite un mejor rendimiento para identificar aplicaciones de prueba. Si tienes un proyecto de prueba para UWP que se inicializó antes de la versión 15.7 de Visual Studio, es posible que veas este error en Salida>Pruebas:

System.AggregateException: se produjeron uno o varios errores. ---> System.InvalidOperationException: No se encontró el siguiente TestContainer {} en Microsoft.VisualStudio.TestWindow.Controller.TestContainerProvider <GetTestContainerAsync>d__61.MoveNext()

Para corregir este error:

  • Actualice la propiedad build de los proyectos de prueba mediante el código siguiente:

    <UnitTestPlatformVersion Condition="'$(UnitTestPlatformVersion)' == ''">$(VisualStudioVersion)</UnitTestPlatformVersion>
    
  • Actualice la versión del SDK de TestPlatform mediante el código siguiente:

    <SDKReference Include="TestPlatform.Universal, Version=$(UnitTestPlatformVersion)" />
    

Características en versión preliminar

¿Cómo puedo usar las características en versión preliminar en Visual Studio 2019?

En Visual Studio 2019, puede participar en las características en versión preliminar en Herramientas>Opciones>Entorno>Características de versión preliminar.