¿Cómo puedo ejecutar pruebas específicas usando dotnet test?


Tengo un gran conjunto de pruebas en un proyecto.NET Core. Puedo usar la ventana del Explorador de pruebas para seleccionar algunas pruebas a ejecutar.

También puedo ejecutar el conjunto de pruebas entero en la línea de comandos con dotnet test. ¿Hay alguna manera de ejecutar solo una (o algunas) pruebas en la línea de comandos?

Author: Nate Barbettini, 2016-06-10

3 answers

Con la versión 1.0.0 de dotnet, debe usar la opción filter filter:

Puede filtrar por DisplayName, FullyQualifiedName y Traits.

Ex:

dotnet test --filter "FullyQualifiedName=YourNamespace.TestClass1.Test1"

También se permiten estos operadores:=,!= y ~ (contiene).

Más información aquí: docs

 32
Author: andrecarlucci,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-14 13:42:13

Esta respuesta está desactualizada...

Esto es específico de xunit: dotnet test -method <test name>

<test name> es el nombre completo del método (espacio de nombres + clase + nombre del método)

Si sus pruebas son un Theory, AFAIK, no hay manera de especificar qué teoría ejecutar. Los ejecutará a todos.

 11
Author: Victor Hurdugaci,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-14 23:54:07

Dado que esta pregunta está etiquetada con xUnit , el comando para el comando dotnet xUnit CLI es el siguiente:

dotnet xunit -method FullyQualifiedName
 7
Author: GeorgDangl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-08-10 19:49:04