2

VMWare と NUnit を使用して自動回帰テストを開発しています。テストをいくつかのステップに分割しましたが、各ステップでパフォーマンスの低下を調べたいと思います。NUnit のようにテストのタイミングを計るだけでは、信頼性がないように思われます。私は約 15% の受け入れ率を計算しましたが、私たちの手順は 35% 以上異なる場合があります。このようなリソースに依存するテスト環境で、パフォーマンスをテストする一貫した方法はありますか? 「スマート」タイミング システムは私の唯一の選択肢ですか?

4

3 に答える 3

5

この種のパフォーマンステストでは、単純な合格/不合格の結果をもたらすシステムなどはありません。実生活では、システムを変更すると、あるものは速くなり、あるものは遅くなる可能性があります。したがって、通常、「より良い」と「より良くない」のどちらかを選択するのではなく、さまざまな種類のより良いものを選択します。(もちろん、それが厳密に悪化する場合は避けたいと思います。)

私が過去にこれのためにしたことは、時間の経過とともに統計を保持することです。テストを実行するたびに、リビジョン番号とテストのタイミングを含む結果をSQLデータベースにドロップします。次に、いつでも好きな方法でそれらをグラフ化して(理想的には、チームの全員がレビューできるように小さなWebアプレットで)、パフォーマンスが上昇傾向にあるか下降傾向にあるか、または特定のリビジョン以降パフォーマンスが低下しているかどうかを確認できます。

ただし、ここで重要なのは、グラフである必要があるということです。そうすれば、人間の目はそれを見て傾向を見つけることができます。データを数値的に分析するためのAIアルゴリズムを考え出すために一週間を費やすことができますが、それは人間のパターン認識能力に勝るものはありません。

于 2008-09-16T22:10:23.600 に答える
0

パフォーマンス テストに関しては、VMware やその他の仮想化プロセスを使用することに非常に懐疑的でした。過去にこれを処理した方法は、ビルドの一部で最新バージョンを静的マシンにインストールし、テストを実行することでした。仮想化以外では、より一貫した結果が得られるはずです。

于 2008-09-16T21:58:26.467 に答える
0

Ants Profiler などのツールを使用するとメソッドの実行時間や実行時間がわかるので、利用可能な機能を調べてみてください。

于 2008-09-16T21:57:49.493 に答える