5

私は、非常に大きな製品 (オペレーティング システムのサイズを考えてください) に対して一種の統合/ストレス テストを行っています。これまでは、すべての (カスタム) ワークロード アプリケーションを一連のバッチ タイプのジョブに入れ、それぞれが 1 回のストレス テストの実行を表すことに満足してきました。平均的なテスト実行では、13 のシステムで実行される 100 を超えるワークロードが含まれる時点に到達したので、もう少し高度なものを構築する時期に来ていると考えています。

単体テスト フレームワークについては多くのことを見てきましたが、より高度なストレス タイプのテストについてはほとんど見てきませんでした。多数のワークロードを管理するという問題を解決する一般的な (または一般的ではない) 方法を知っている人はいますか?

現時点では、個々のワークロードのデータベースを保持し、特定の日に必要なストレスの種類に応じてそれらを組み合わせてテスト パッケージに適合させるためのフロントエンドを提供したいと考えていますが、その例はありません。個々のワークロードがシステムに与えるストレスをランク付けするなど、より高度なことを行うための最良の方法です。

大型製品のストレス テスター仲間は何をしているのですか? 私たちにとって、手作業で作成したいくつかのスクリプトでは、もはや役に立ちません。

4

2 に答える 2

1

私自身の経験では、最初は WCAT を使用した IIS プラットフォームで、その後 JMeter と Selenium を使用していました。

WCAT と JMeter の両方を使用すると、Web サイトをルートとしてウォークスルーし、フォームに入力するなどして、プロセスをスクリプトとして記録できます。その後、スクリプトを単独で再生することも、複数のクライアントと複数のスレッドをシミュレートすることもできます。ゴツゴツした予測不可能な使用などをシミュレートするために、再生をランダム化します。

スクリプトは、編集することも、自分が行こうとしていることがわかったら手動で書くこともできます。WCAT を使用すると、ログ ファイルを再生するだけでなく、実際の使用状況をシミュレートできます。

上記の両方がPCまたはサーバーにインストールされます。

Selenium は FireFox アドインですが、同様の方法でスクリプトを記録および再生し、スケールアップを可能にします。

テスト対象のシナリオを作成し、それに適合するようにテストを設計することは、やや難しい作業です。また、データベースやその他の外部リソースとのやり取りも考慮に入れる必要があります。ログ ファイルの確認に多くの時間を費やすことが予想されるため、優れたグラフィック出力が不可欠です。

于 2009-12-23T15:03:48.780 に答える
0

私にとって最も困難だったのは、負荷がかかっているサーバーからパフォーマンス メトリックを収集して整理することでした。Performance Monitor が私の主なツールでした。Visual Studio Tester エディションが登場したとき、パフォーマンス カウンターを簡単に操作できることに驚きました。彼らは、Web サーバー、SQL サーバー、ASP.NET アプリケーションなどのカウンターのリストを事前にパッケージ化していました。存在すら知らなかったパフォーマンス カウンターがたくさんあることを知りました。さらに、独自のカウンターを収集することもできます。各実行後にメトリクスを保存できます。本番サーバーに接続して、今日のサーバーの状態を確認することもできます. それから、それらすべてのグラフィックをリアルタイムで見ることができます。:) より多くの負荷が必要な場合は、VS Load Agent を取得して、負荷生成リグを作成できます (または、ボットネットと呼ぶ必要があります)。市販のオーバー製品と比較すると、比較的安価です。MS ライセンスはプロセッサごとに適用されますが、同時要求ごとには適用されません。これは、ハードウェアが処理できる最大の負荷を生成できることを意味します。平均して、デュアルコア、2 GB メモリのコンピューターで約 3,000 の同時 Web 要求を取得できました。さらに、パフォーマンス テストをビルドに組み込むことができます。

もちろんWindowsにも対応。さらに、ツールの価格は約 6,000 ドルで、少し高くなる可能性があります。さらに、追加のロード エージェントごとに同じ金額がかかります。

于 2009-12-23T21:27:48.167 に答える