0

アンマネージ C++ 実行可能ファイル (レガシ アプリ) をインストルメント化するために、Visual Studio の vsinstr.exe ツールを使用したいと考えています。これは非常に大規模なプロジェクトであり、コード ベースに変更が加えられたときにどのテスト ケースが影響を受けるかを特定するために、巨大なテスト自動化コンテンツを実際のコードにマッピングする方法となります。

ただし、このようなインストルメント化された実行可能ファイルのパフォーマンスについては懸念があります。基本的には、テスト自動化コンテンツ全体を実行してカバレッジ データを取得する (またはコードが変更されたときに更新する) 必要があり、これが毎晩行われるからです。全体像をつかむには、テスト自動化の実行におそらく 10 時間かかります (レガシー アーキテクチャのため、GUI テスト、ユニット テストはありません)。

インストルメント化された実行可能ファイルのパフォーマンスに関する実際の経験を持っている人はいますか?

4

1 に答える 1

0

I realize this question is getting long in the tooth (getting old) so my answer is intended for other users who stumble across this question.

From my real world experience, instrumented binaries do run significantly slower, often by orders of magnitude. However, I have only instrumented MANAGED binaries and the OP specifically stated unmanaged C++ so "your mileage may vary."

My suggestion would be to run a subset of the tests that take between 2-3 minutes. Run that subset 3 times and average the actual run time results. Then instrument the binaries and run the same tests 3 times and compute the average. Fewer tests and the data might be skewed because of application initialization. More tests and you MAY end up waiting an hour for each instrumented test.

于 2014-07-08T14:27:55.547 に答える