Compartir a través de


Opciones de la línea de comandos para MSTest.exe

MSTest.exe es el comando de línea de comandos que se utiliza para ejecutar pruebas. Este comando tiene varias opciones que se pueden usar para personalizar la ejecución de pruebas. Muchas de estas opciones se pueden usar conjuntamente con otras; de hecho, ciertas opciones se deben usar conjuntamente con otras, como se describe en las secciones siguientes. Estas opciones se pueden especificar en cualquier orden en MSTest.exe en la línea de comandos.

MSTest.exe no distingue entre mayúsculas y minúsculas para interpretar las opciones o los valores que se especifican para ellas.

Las tablas siguientes muestran todas las opciones para MSTest.exe, con descripciones breves. Puede ver un resumen similar escribiendo MSTest /h en una línea de comandos.

Opciones generales de la línea de comandos

/testcontainer:[nombre de archivo]

Para cargar un archivo que contenga pruebas.

Ejemplo: /testcontainer:tests.dll.

Para obtener más información, vea /testcontainer.

/testmetadata:[nombre de archivo]

Para cargar un archivo que contenga metadatos de pruebas. Para obtener más información, vea /testmetadata.

/testlist:[ruta de acceso de lista de pruebas]

Para especificar la lista de pruebas que se van a ejecutar, según se indica en el archivo de metadatos. Para obtener más información, vea /testlist.

/category:[filtro de categoría de pruebas]

Especifique y filtre qué categorías de pruebas se van a ejecutar. Para obtener más información, vea /category.

/test:[nombre de la prueba]

Para especificar el nombre de una prueba que se va a ejecutar. Para obtener más información, vea /test.

/noisolation

Ejecuta las pruebas en el proceso MSTest.exe. Esta opción mejora la velocidad de ejecución de las pruebas pero aumenta el riesgo del proceso MSTest.exe.

/testsettings: [nombre de archivo]

Use el archivo de configuración de pruebas especificado.

Ejemplo: /testsettings:Local.Testsettings.

Para obtener más información, vea /testsettings.

/runconfig:[nombre de archivo]

Para utilizar el archivo de configuración de la ejecución especificado.

Ejemplo: /runconfig:localtestrun.Testrunconfig

Para obtener más información, vea /runconfig.

NotaNota
Esta opción de la línea de comandos se mantiene por motivos de compatibilidad con versiones anteriores de Microsoft Visual Studio 2010.Las configuraciones de las ejecuciones de pruebas han sido reemplazadas por las configuraciones de pruebas en Visual Studio 2010 Ultimate.

/resultsfile:[nombre de archivo]

Para guardar los resultados de la ejecución de pruebas en el archivo especificado.

Ejemplo: /resultsfile:testResults.trx

Para obtener más información, vea /resultsfile.

/unique

Para ejecutar la prueba únicamente si se encuentra una coincidencia única para algún elemento /test especificado. Para obtener más información, vea /unique.

/detail:[identificador de propiedad]

Para especificar el nombre de una propiedad de la que desea mostrar valores, si existen, además del resultado de la prueba. Para obtener más información, vea /detail.

/help

Para mostrar el mensaje de uso de MSTest.exe (forma abreviada: /? o /h).

/nologo

Para que no aparezcan pancartas de inicio ni mensajes de copyright.

/usestderr

Para usar el error estándar para generar información de error.

Opciones de la línea de comandos para publicar resultados de prueba

Para obtener más información sobre estas opciones, vea Opciones de la línea de comandos para publicar resultados de pruebas.

/publish:[nombre del servidor]

Publica los resultados en la base de datos de la colección de proyectos de equipo del servidor especificado.

/publishresultsfile:[nombre de archivo]

Para especificar el nombre del archivo de resultados que se va a publicar. Si no se ha especificado ningún nombre de archivo de resultados, se utiliza el archivo generado en la ejecución activa.

/publishbuild:[identificador de generación]

Para publicar resultados de pruebas utilizando este identificador de versión.

/teamproject:[nombre del proyecto de equipo]

Para especificar el nombre del proyecto de equipo al que pertenece la versión.

/platform:[plataforma]

Para especificar la plataforma de la versión en la que se deben publicar los resultados de pruebas.

/flavor:[tipo]

Para especificar el tipo de generación en el que se deben publicar los resultados de pruebas.

Utilizar opciones de MSTest

Las secciones siguientes describen con más detalle muchas de las opciones para MSTest.exe. No incluye las opciones que se usaron para publicar los resultados de las pruebas. Para obtener más información acerca de esas opciones, vea Opciones de la línea de comandos para publicar resultados de pruebas.

/testcontainer

/testcontainer:[nombre de archivo]

El contenedor de pruebas es un archivo que contiene las pruebas que se desea ejecutar. Por ejemplo, para pruebas por orden, el contenedor de pruebas es el archivo .orderedtest que define la prueba por orden. Para pruebas unitarias, es el ensamblado generado a partir del proyecto de prueba que contiene los archivos de código fuente de la prueba unitaria.

Nota

Para pruebas unitarias, éste es el ensamblado que contiene el código de la prueba, no el ensamblado que contiene el código de la aplicación que se está probando. Por ejemplo, si una solución contiene un proyecto denominado BankAccount y un proyecto de prueba correspondiente denominado BankAccountTest, especifique /testcontainer:BankAccountTest.dll.

Nota

Puesto que el archivo de metadatos de prueba también contiene pruebas que se pueden ejecutar, no se deben especificar las opciones /testcontainer y /testmetadata en una misma línea de comandos. Hacerlo resultaría ambiguo y generaría un error.

/testmetadata

/testmetadata:[nombre de archivo]

Puede utilizar la opción /testmetadata para ejecutar pruebas de varios contenedores de pruebas.

El archivo de metadatos de prueba se crea para una solución al crear listas de pruebas desde la ventana Editor de lista de pruebas. Este archivo contiene información sobre todas las pruebas incluidas en la ventana Editor de lista de pruebas. Se trata de todas las pruebas que existen en todos los proyectos de prueba en la solución.

El archivo de metadatos de prueba es un archivo XML que se crea en la carpeta de la solución. Este archivo se muestra en el Explorador de soluciones en el nodo Elementos de la solución. Un archivo de metadatos de prueba tiene la extensión .vsmdi y está asociado a la ventana Editor de lista de pruebas. Es decir, si hace doble clic en un archivo .vsmdi en el Explorador de Windows, el archivo abre Visual Studio y su contenido. Todas las pruebas de los proyectos de prueba de una solución se muestran en la ventana Editor de lista de pruebas.

El archivo de metadatos de prueba sólo se puede modificar efectuando cambios que se reflejen en la ventana Editor de lista de pruebas, como crear o eliminar pruebas, o cambiar las propiedades de una prueba.

Nota

Puesto que el contenedor de pruebas contiene pruebas que se pueden ejecutar, no se deben especificar las opciones /testcontainer y /testmetadata en una misma línea de comandos. Hacerlo resultaría ambiguo y generaría un error.

Si se utiliza la opción /testmetadata, se recomienda indicar pruebas específicas para ejecutar mediante la opción /test o /testlist, o ambas.

/testlist

/testlist:[ruta de acceso de lista de pruebas]

La opción /testlist es una lista de pruebas, según el archivo de metadatos de prueba, que se van a ejecutar. Para ejecutar las pruebas contenidas en varias listas de pruebas, use varias veces la opción /testlist. Se ejecutarán las pruebas ordenadas de la lista de pruebas.

Nota

Sólo puede utilizar la opción /testlist si también utiliza la opción /testmetadata.

Las opciones /testlist y /test se pueden usar conjuntamente. Esto es equivalente a seleccionar una lista de pruebas y una o varias pruebas individuales en la ventana Editor de lista de pruebas y, después, hacer clic en Ejecutar pruebas.

/category

/category:[filtro de categoría de pruebas]

Use la opción /category para especificar qué categoría de pruebas se va a ejecutar.

Nota

Debe usar la opción /testcontainer para poder usar la opción /category.

Solo se puede usar la opción /category una vez por línea de comandos, pero puede especificar varias categorías de pruebas con el filtro de categoría de pruebas. El filtro de categoría de pruebas está compuesto por uno o varios nombres de categoría de pruebas separados por los operadores lógicos '&', '|' , '!', '&!'. Los operadores lógicos '&' y '|' no se pueden usar juntos para crear un filtro de categoría de pruebas.

Por ejemplo:

  • /category:group1 ejecuta las pruebas de la categoría de pruebas "group1".

  • /category:"group1&group2" ejecuta las pruebas de las categorías de pruebas "group1" y "group2". No se ejecutarán las pruebas que están solo en una de las categorías de pruebas especificadas.

  • /category:"group1|group2" ejecuta las pruebas que están en la categoría de pruebas "group1" o "group2". También se ejecutarán las pruebas que están en ambas categorías de pruebas.

  • /category:"group1&!group2" ejecuta las pruebas de la categoría de pruebas "group1" que no están en la categoría de pruebas "group2". No se ejecutará ninguna prueba que esté en la categoría de pruebas "group1" y "group2".

    Nota

    Si su filtro está compuesto por una sola categoría, como /category:group1, no tiene que escribir el filtro entre comillas dobles. Sin embargo, si su filtro hace referencia a más de una categoría, como /category:"group1&group2", el filtro tiene que estar entre comillas dobles.

/test

/test:[nombre de la prueba]

Utilice la opción /test para especificar pruebas individuales para ejecutar. Para ejecutar varias pruebas, use varias veces la opción /test.

Nota

Puede utilizar la opción /test con /testcontainer o /testmetadata, pero no con ambas.

Las opciones /testlist y /test se pueden usar conjuntamente. Esto es equivalente a seleccionar una lista de pruebas y una o varias pruebas individuales en la ventana Editor de lista de pruebas y, después, hacer clic en Ejecutar pruebas.

La cadena que se especifique con la opción /test sirve para asociar los nombres de las pruebas en un contenedor de pruebas o en un archivo de metadatos de prueba. Esto significa que se pueden especificar varias pruebas utilizando un valor único para /test. Por ejemplo, si se indica /test:ittest, se generarían coincidencias para pruebas llamadas DebitTest y CreditTest porque los dos nombres de pruebas contienen la subcadena "ittest".

Nota

El valor que se especifique con la opción /test se prueba no sólo para el nombre de la prueba, sino también para la ruta de acceso a esa prueba, como aparece en el Explorador de soluciones o, con pruebas unitarias, para su nombre completo.

A continuación, se presentan dos ejemplos de uso:

Ejemplo de prueba unitaria: El archivo UnitTest1.cs en el proyecto TestProject2 contiene una prueba unitaria denominada TestMethod1. Especificar un valor de "ittest" para la opción /test también funcionaría en esta prueba, ya que la cadena se prueba para el nombre completo "TestProject2.UnitTest1.TestMethod1" y la cadena "ittest" también aparece en "UnitTest1".

Ejemplo de prueba genérica: la línea de comandos siguiente ejecuta la prueba genérica especificada y, en los resultados de la prueba, se muestra la ruta de acceso completa a la prueba.

mstest /testcontainer:"C:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\TestProject2\TestProject2\generictest1.generic" /test:testproject32\generic

/noisolation

/noisolation

Utilice esta opción para ejecutar pruebas en el proceso MSTest.exe. Utilizar esta opción no produce ningún otro cambio en la configuración de la ejecución de prueba. El propósito de esta opción es mejorar la velocidad de ejecución de pruebas. Sin embargo, aumenta el riesgo de la ejecución de pruebas en general, porque una excepción no controlada iniciada por el código de pruebas haría que se bloqueara el proceso MSTest.exe.

/testsettings

/testsettings:[nombre de archivo]

Use esta opción para especificar un archivo de configuración de pruebas. Por ejemplo: /testsettings:local.Testsettings.

Un archivo de configuración de pruebas se puede especificar de otras maneras, como con la opción /testmetadata. Las reglas que rigen la especificación de los archivos de configuración de pruebas se describen aquí.

  • Si se usa la opción /testsettings, se usará el archivo que especifica, independientemente de que también se use o no la opción /testmetadata.

  • Si se usa la opción /testmetadata para apuntar a un archivo de metadatos que especifica el archivo de configuración de pruebas activo, se usará este archivo si no se usa la opción /testsettings.

  • Si no se usa la opción /testsettings y tampoco se especifica un archivo de configuración de pruebas en el archivo de metadatos de prueba, la ejecución de pruebas usará el archivo de configuración de pruebas predeterminado.

    Nota

    Para obtener más información sobre los archivos de configuración de pruebas, vea Crear una configuración de pruebas para pruebas automatizadas como parte de un plan de pruebas.

/runconfig

/runconfig:[nombre de archivo]

Nota   Esta opción de la línea de comandos se mantiene por motivos de compatibilidad con versiones anteriores de Microsoft Visual Studio 2010. Las configuraciones de las ejecuciones de pruebas han sido reemplazadas por las configuraciones de pruebas en Visual Studio 2010 Ultimate.

Utilice esta opción para especificar un archivo de configuración de ejecución. Por ejemplo: /runconfig:localtestrun.Testrunconfig.

Un archivo de configuración de ejecución se puede especificar de otras maneras, como con la opción /testmetadata. Las reglas que rigen la especificación de archivos de configuración de ejecución se describen aquí.

  • Si se usa la opción /runconfig, se usará el archivo que especifica, independientemente de que también se use o no la opción /testmetadata.

  • Si se utiliza la opción /testmetadata para señalar un archivo de metadatos que especifica el archivo de configuración de ejecución activo, este archivo se utilizará si no se usa la opción /runconfig.

  • Si no se utiliza la opción /runconfig y tampoco se especifica un archivo de configuración de ejecución en el archivo de metadatos de prueba, la ejecución de prueba usará el archivo de configuración de ejecución predeterminado.

/resultsfile

/resultsfile:[nombre de archivo]

Utilice esta opción para guardar los resultados de la ejecución de prueba en el archivo con nombre. Por ejemplo: /resultsfile:testResults.trx.

/unique

/unique

Utilice la opción /unique junto con la opción /test. La opción /unique indica a MSTest.exe que ejecute una prueba solo si hay una coincidencia única con el valor proporcionado con la opción /test.

Por ejemplo, el contenedor de pruebas MyTestProject contiene las pruebas denominadas MethodTest1 y MethodTest10.

La línea de comandos:

mstest /testcontainer:testproject2.dll /test:MethodTest1

ejecuta ambas pruebas, MethodTest1 y MethodTest10, porque "MethodTest1" es una subcadena de "MethodTest10".

Pero la línea de comandos:

mstest /testcontainer:testproject2.dll /test:MethodTest1 /unique

genera un error porque no hay una coincidencia única para este nombre de prueba. Puede identificar de forma única el nombre de la prueba usando el identificador de la prueba que se muestra en la vista Propiedades de la prueba.

/usestderr

/usestderr

Al utilizar esta opción, la siguiente información se escribirá en el error estándar:

  • Las pruebas no superadas, anuladas, con errores, para las que se haya agotado el tiempo de espera, que no se pueden ejecutar o no ejecutadas.

  • Errores de ejecución.

  • Errores al analizar los argumentos de la línea de comandos.

  • Resumen de ejecución cuando la ejecución de pruebas no se ha superado.

Sin esta opción, todos los resultados se envían a la salida estándar.

/detail

/detail:[identificador de propiedad]

Esta opción se utiliza para mostrar propiedades de caso de prueba adicionales, si existen. Se puede pasar más de una instancia de la opción /detail, cada una de ellas con un solo identificador de propiedad, en una única línea de comandos. A continuación, se indican identificadores de propiedad válidos para la opción /detail:

adapter

id

projectrelativepath

computername

isautomated

readonly

debugtrace

link

spoolmessage

description

longtext

stderr

displaytext

name

stdout

duration

outcometext

storage

errormessage

owner

testcategoryid

errorstacktrace

parentexecid

testname

executionid

priority

testtype

groups

projectname

traceinfo

Nota

La selección real de los identificadores de propiedad que se pueden usar con la opción /detail varía según el tipo de prueba. Por consiguiente, esta lista es sólo una aproximación. En concreto, si está usando tipos de prueba personalizados, la selección de propiedades será diferente. Para saber qué identificadores de propiedad se pueden usar, examine el archivo de resultados de prueba generado por la ejecución de prueba. Para obtener más información acerca de los archivos de resultados de la prueba, vea Cómo: Guardar y abrir resultados de pruebas en Visual Studio.

Si una propiedad existe para un caso de prueba específico, su información se incluye en el resumen de los resultados.

Por ejemplo, la línea de comandos:

mstest /testcontainer:Errors.dll /detail:testtype

genera el resultado siguiente, que contiene información del tipo de prueba:

...
Results                    Top Level Tests
--------                   -----------------
Inconclusive               TestProject2.BankAccountTest.CreditTest
[testtype] = Unit Test
...

Vea también

Conceptos

Revisar resultados de pruebas

Ejecutar pruebas automatizadas desde la línea de comandos