vscode visual tag studio instalar español color code closing brackethighlighter visual-studio unit-testing visual-studio-2015 vs-community-edition

tag - Pruebas de perfil en Visual Studio Community 2015



visual studio code español (3)

Es posible hacer un perfil de las pruebas MSTest (también puede hacer un perfil de nunit / xunit con adaptadores de prueba) usando vstest.console.exe

  • Seleccione el programa ejecutable como el objetivo de Analyze -> Performance Profiler
  • Proporcione la ruta de acceso de vstest.console.exe (generalmente vive en C:/Program Files (x86)/Microsoft Visual Studio 12.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow )
  • Proporcione parámetros como <full path to test dll file>.dll /TestCaseFilter:"FullyQualifiedName~<namespace>.<test class>" como los parámetros
  • Si está utilizando nUnit o xUnit, proporcione el adaptador de prueba nunit o la ruta del adaptador de prueba xunit utilizando el argumento /TestAdapterPath para vstest.console.exe

More información sobre cómo proporcionar parámetros a vstest.exe

Las publicaciones en la Web sugieren que puede realizar un perfil de las pruebas en Visual Studio haciendo clic derecho y seleccionando "Prueba de perfil": http://adamprescott.net/2012/12/12/performance-profiling-for-unit-tests/ Pero yo solo vea "Ejecutar prueba" y "Prueba de depuración" para mis pruebas de NUnit, y lo mismo para xUnit.NET. ¿Qué me estoy perdiendo para hacer un perfil de las pruebas? ¿Esto no es compatible con la edición de Community o me falta alguna configuración o componente?

(Parecería extraño si no es compatible con Community, dado que puedo crear perfiles de ejecutables en Community, y así podría solucionar este problema al crear un ejecutable que ejecute la prueba y crear un perfil de eso. ¿Por qué admitir los perfiles ejecutables pero no las pruebas de perfiles? )

Pasos para reproducir para NUnit: se creó un nuevo proyecto de biblioteca C # en Visual Studio Community 2015, se pegó el contenido de http://nunit.org/index.php?p=quickStartSource&r=2.6.4 en un archivo nuevo, se instalaron los paquetes NuGet de la siguiente manera:

<packages> <package id="NUnit" version="2.6.4" targetFramework="net452" /> <package id="NUnit.Runners" version="2.6.4" targetFramework="net452" /> <package id="NUnitTestAdapter" version="2.0.0" targetFramework="net452" /> </packages>

Incluso reinició Visual Studio. Las pruebas se muestran en Test Explorer y se pueden ejecutar, pero no hay opción de "Prueba de perfil" disponible en el menú contextual. También probé pasos equivalentes para xUnit.net, pero no alegría.


La respuesta parece estar en un comentario en la página de Adam Prescott a la que se hace referencia en la pregunta:

16 de agosto de 2013 a las 4:57 p.m.

Desafortunadamente, por MSDN, esta función solo está disponible en las ediciones Premium y Ultimate.

http://msdn.microsoft.com/en-us/library/ms182372.aspx

El enlace en el comentario actualmente se refiere a la edición 2015 de Visual Studio. La edición de 2010 de la página muestra claramente qué versiones de Visual Studio 2010 son compatibles con los perfiles. Las páginas para la versión 2012 y posterior omiten una declaración clara de qué versiones admiten la creación de perfiles.


Lamento responder a una pregunta anterior, pero pensé que podría mejorar la respuesta actual con la forma en que pude hacer un perfil de una prueba NUnit en VS Community 2015 el día de hoy.

Perfilando el NUnit Test Runner como un ejecutable

  1. Asegúrese de ejecutar VS2015 como administrador .
  2. Haga clic en Analizar> Perfilador de rendimiento ... desde la barra de herramientas.
  3. Elija el Asistente de rendimiento y haga clic en Iniciar .
  4. Página 1: en mi caso, quería ver las asignaciones, así que hice clic en la asignación de memoria .NET .
  5. Página 2: Deje la opción Se verificó un archivo ejecutable (archivo .EXE) y continúa.
  6. Página 3: en esta página debe definir el ejecutable para ejecutar.

    Este será el nunit3-console.exe prueba nunit3-console.exe para NUnit, o cualquiera que sea el equivalente para su marco de prueba.

    • ¿Cuál es la ruta completa al ejecutable? C:/Program Files (x86)/NUnit.org/nunit-console/nunit3-console.exe
    • Argumentos de línea de comandos: bin/Debug/Test.dll --inprocess --test TestNamespace.TestClassName.Test_Method_Name
    • Directorio de trabajo: //MAC/Home/Documents/GitHub/ApplicationName/Test

Tendrá que sustituir estas rutas por otras que tengan sentido para su sistema. El --inprocess switch hace que las pruebas se ejecuten en línea desde el proceso NUnit. Sin ese cambio, se genera un proceso secundario y, aunque parezca que el generador de perfiles funcione, usted estará perfilando nunit3-console.exe, no su propio código.

  1. Página 4: Haga clic en Finalizar .

    Tenga en cuenta que el generador de perfiles generará archivos de informe y los guardará en su directorio de trabajo. En mi caso, dado que mi directorio de trabajo era un recurso compartido UNC, me requería elegir una ruta de carpeta local para guardar los informes antes de que el generador de perfiles comenzara.

    Una ventana de terminal debe aparecer brevemente con la salida del corredor NUnit en ella. La ventana se cierra automáticamente, por lo que si ve un destello de texto en rojo, no tendrá tiempo de leer el error antes de que desaparezca. Puede copiar el comando de la página 3 en el símbolo del sistema para leer más cómodamente.

  2. Después de ejecutar el comando (ya sea que haya tenido éxito o no), debe obtener un informe donde pueda rastrear cuántas asignaciones causó su prueba.

Desafortunadamente, las asignaciones en una prueba pequeña probablemente quedarán eclipsadas por las asignaciones causadas por el propio NUnit.Framework . Hice clic para ver si había una forma de excluirlos de los resultados, pero no encontré la manera de hacerlo, así que simplemente los ignoré.

Si desea nunit3-console.exe > Properties un perfil de una prueba diferente, puede abrir el Explorador de rendimiento y hacer clic con el botón derecho en nunit3-console.exe > Properties para cambiar los argumentos de la línea de comandos y luego hacer clic en Actions > Start Profiling para actualizar el informe.

Conclusión

Esta solución tiene éxito en el perfil de los resultados de una única prueba NUnit, pero esa afirmación viene con algunas advertencias.

Era apenas menos desagradable que crear un ejecutable independiente para el perfil, y el hecho de que las asignaciones de NUnit aparezcan en el informe podría convertirlo en un no arranque si necesita realizar un perfil realmente sensible.

Tal vez alguien con más experiencia VS 2015 me puede ayudar a mejorar esta respuesta con algunos consejos sobre cómo excluir el dll NUnit.Framework del informe.