2015-04-24 21 views

risposta

26

Ok, così ho capito come si fa per il campionamento profiler (non strumentazione) ...

  1. lancio di Visual Studio (VS) e aprire il progetto che ha il test automatizzato che si desidera profilo.
  2. Inserire un punto di interruzione sulla prima riga del test che verrà profilato.
  3. Eseguire il debug del test.
  4. Avviare una seconda istanza di VS.
  5. Open Performance Explorer (a seconda della versione di VS2013 questa sarà in Strumenti-> Analizza-> Windows-> Performance Explorer o Analizza-> Windows-> Performance Explorer).
  6. In Performance Explorer, fare clic su Azioni-> Allega e collega a vstest.executionengine. *.
  7. Torna alla prima istanza VS (attualmente in un punto di interruzione) ed esegui il test fino al completamento.
  8. Torna alla seconda istanza VS. Il profiler rileverà che il processo di test unitario è terminato e completa la sua profilazione.

Una cosa che potrebbe essere migliorata sarebbe quella di fare questo con la strumentazione, ma non è al momento chiaro come ciò potrebbe essere fatto nella versione VS Professional.

+2

Grazie! Questa procedura funziona anche per me in VS 2012 Professional. Sapendo che devi collegarti al processo chiamato vstest ... era la chiave. Tuttavia, non ho ancora capito come utilizzare la creazione di profili di strumentazione con un test unitario. –

+1

Se si utilizza il Resharper per eseguire i test, il processo sarà "JetBrains.ReSharper.TaskRunner.CLR45.x64.exe" o simile –

+2

Nella comunità di Visual Studio 2015, quello che è necessario selezionare è [TE.ProcessHost.Managed] (http://i.stack.imgur.com/1Wko1.png). Sfortunatamente, sembra che ce ne siano due, quindi è necessario selezionare quello con un maggiore utilizzo della CPU. (Vedi immagine.) –

4

Per eseguire l'analisi delle prestazioni su un test di unità, creo semplicemente un'applicazione console da cui chiamo il metodo di test unitario, quindi la utilizzo come progetto di destinazione per l'analisi delle prestazioni. Questo è probabilmente più facile che accendere due istanze di VS e allegare.

+1

Sembra così semplice ora che lo metti in questo modo. – GaTechThomas

+0

Questo sembra un approccio appropriato per VS 2017. Ci proverò ora e poi lascerò il mio feedback ulteriormente nei commenti .. –