web-dev-qa-db-ja.com

Visual Studio 2012で単体テストをプロファイルする方法

プロファイルVisual Studio 2012 UltimateのMSTest単体テストを外部のプロファイリングツールを使用せずに実行できますか?

49
alexey

この機能は、次のVisual Studio 2012四半期更新1で再度追加されました。テストエクスプローラーでプロファイリングするテストを右クリックし、コンテキストメニューから[プロファイルテスト]を選択します。

54
Oleg Sych

Visual Studioでは、これは本当に強力な機能でした。あなたとして、私はVS2012でそれを見つけることができません(MSDNまたはブログには参照がありません...)

さて、単体テストのプロファイリングのために私が見つけた唯一の解決策は、vstest.executionengine.x86.exe(x86の場合はx86ですが、64ビットでは異なる場合があります)というプロセスにプロファイラーをアタッチすることです。

これは、右クリックした後、[パフォーマンスエクスプローラ]タブで実行できます。

enter image description here

プロファイラーが起動したら、必要なだけテストを実行できます。次にプロファイリングを停止すると、このセッションのすべての詳細が表示されます。

この手法には2つの注意事項があります。

  • 何らかの理由で、プロセスがリストに含まれていません。多分それはアイドル時に停止します。 1つだけテストを開始して、それを確認してください。
  • セッションごとにプロファイラーをアタッチする必要があります。スクリプトを作成する方法はまだ見つかりません。

これがお役に立てば幸いです。

30
Cybermaxs

Visual Studio 2015では、Cyber​​maxの指示に従いますが、TE.ProcessHost.Managed。残念ながら、そのうちの2つが表示されるため、CPU使用率が高い方を選択する必要があります。

http://i.stack.imgur.com/1Wko1.png

0
Mateen Ulhaq