1

完全なソース コードを含む、C# で作成されたすばらしいアプリが与えられたと想像してください。したがって、ボタンを押す、ホットキーを押すなど、ユーザーイベントを実行するときにどのメソッドが実行されるかを把握する必要があります。コードベースが非常に大きいため、そのボタンのイベント ハンドラーを追跡するなど、コードの関連部分を手動で探す必要はありません。

さて、時間 T (ボタンを押したとき) から実行されているメソッドのログのようなものを取得する簡単な自動化された方法はありますか? この状況を具体的に扱った記事へのリンクを説明および/または提供していただけますか?

4

4 に答える 4

2

他の人が説明しているコードカバレッジツールは、コードをプロファイリングする機能を活用してます。コードカバレッジツールの基盤は、アプリケーションプロファイラーを使用し、プロファイリングの一部としてソースコードマッチングとラインヒットカウントを実行するようにプログラムされていることです。.NETの場合、コードカバレッジおよびその他のプロファイリングツールは.NETプロファイリングAPIを活用します。NCoverですら。

行ヒット数ではなく、探しているログアクティビティの多くを提供する可能性のある他のツールが存在します。特別なXMLファイルにログを記録し、デジタル署名してタイムスタンプを付け、サーバープロセスにアップロードする独自のプロファイリングアプリケーションのプログラミングに取り組むこともできます。

  • AQtimeには、あなたが探しているかもしれない制御フローとロギング機能があるようです。
  • SparxSystemsのEnterpriseArchitectには、SSProfiler75.exeと呼ばれるプロファイリングアプリケーションが含まれています。このアプリケーションは、ソースコードをシーケンス図に「リバースエンジニアリング」する機能の背後にあります。

プロファイラーのユースケースの1つである、単なるコードカバレッジツールではなく、コードプロファイリングツールを探すことを検討してください。

于 2010-07-23T16:16:41.610 に答える
1

実行されたメソッドのリストは「コードカバレッジ」と呼ばれます。

呼び出されたメソッドをログに記録する「コード カバレッジ アナライザー」と呼ばれるツールがあります。これは、コードをテストするとき、1 つまたは複数のテスト ケースがあり、テストが「カバー」しているメソッドを知りたいときに役立ちます。

このような C# 用ツールの 1 つの例は、NCover と呼ばれます。このツールや他のツールへのリンクについては、「C#/.net のコード カバレッジ」を参照してください。

于 2009-11-28T01:23:21.390 に答える
0

すべてのイベント ハンドラにブレーク ポイントをプログラムで追加するマクロを誰かが作成できるはずです。

Visual Studio 2010 には非常に優れたメソッド階層ビューがありますが、2008 年には利用できません。

于 2009-11-28T01:29:55.683 に答える
0

C# Visual Studio Express を使用してコードにブレークポイントを設定し、IDE からステップ デバッグを使用できます。デザイナー モードでボタンをダブルクリックすると、ボタンが押されたときに実行されるコードを確認することもできます。関連するコードに直接移動し、そこにブレーク ポイントを配置して、アプリケーションを実行できます。

VS はクローズド ソースですが、VS を使用してオープン ソース アプリをデバッグしてはならないという規則はありません。そしてそれは無料です。

于 2009-11-28T01:25:11.163 に答える