1

これは、どのようなストレス テスト ツールがあるかという問題ではありません。それよりもはるかに難しいと思います。(少なくとも私にとっては)

投稿ごとにランダムな ID を生成する、フォーラムまたはブログ用の安らかなアーキテクチャを検討してください。

これらのトピック/記事の作成をシミュレートするのは簡単です/article./topic

しかし、それらの記事/トピックにコメントするストレス テストはどのように行うのでしょうか? コメントは記事/トピックに属している必要があるため、これは異なります。つまり、これらのアイテムの ID が必要です。ただし、投稿を発行することしかできず、それらの ID を取得する方法がないと、それらを作成することはできません。

この点で同様のサイトを作成していますが、コメントの作成をストレステストする方法がわかりません。

私には 2 つのアイデアがありますが、どちらもかなりひどいものです。

  1. ある種の工場で事前に大規模なシステムを生成し、それを凍結します。そこから、ある種のブラウザ自動化を使用して、これらすべてに関する「コメント」を作成する必要があると考えています。自動化は、JMeter が提供するような記録プロキシを経由すると思います。次に、テストを実行するために、データベースを再読み込みし、大量のログ ファイルを再生します。
  2. HTML ページで提供される動的リンクを利用して、ブラウザーの自動化をすべて使用します。ここでの唯一のオプションは Selenium です。実際には、非常に高価な大規模な Selenium グリッドについて話しているのです。おそらく維持することも非常に困難です。

私が知る限り、オプション 2 はほぼ完全に実行不可能ですが、オプション 1 は耐え難いものに思えます。誰かがもっと賢いものを提案できることを本当に望んでいます。

4

3 に答える 3

3

これは一般的な問題です。サーバーの応答からURLの動的な部分を抽出することで処理します。このシステムはWebブラウザクライアントを使用していると思います。これは、これらのURLがサーバーの応答で送信されていることを意味します。それらが応答に含まれている場合は、それらを取得できます。ただし、「投稿を発行するだけで、それらのIDを取得する方法がない場合」とおっしゃっていたので、そうではないのではないでしょうか。その場合、明確にできますか?

私たちは最近、お客様のためにDrupalシステムの多くのテストを行っていますが、これはまさにあなたが説明した問題を抱えています。ユーザーがコメントしたいページを閲覧するときにページからIDを動的に抽出することで解決するか、オプション1を使用するか、両方の組み合わせを使用します。負荷テストツールが手元にある場合は、コンテンツの生成はそれほど難しくないことに注意してください。ツールを使用して生成してください。つまり、「コンテンツ生成」負荷テストを実行します。有用なデータを独自に生成するだけでなく、テストデータベースを提供し、必要に応じてテストインフラストラクチャを維持するためにバックアップ/復元することができます。これで、より現実的な環境でテストを実行できます。これには、すでに多くのコンテンツが含まれている環境です(もちろん、これ目的にとって現実的であると想定しています)。

興味のある方は、ソフトウェア(Web Performance Load Tester)を使用して問題を解決する方法のデモを行っていただければ幸いです。

于 2010-11-19T13:42:43.187 に答える
3

オプション1。

つまり、実装に関するメモはさておき、基本的にはテスト環境を求めているだけです。だから、答えは1つを作ることです。どのような方法でも:

  • 生成する
  • 一度作ってリロード
  • ランダム化する

なんでもいい。それは一緒に行くアプローチです。

テストは一種の副次的な問題です(ユニットテスト/ブラウザ/何でも、あなた次第です)。

しかし、実際のデータでテストする必要があるところまで来ました。だからそれを実現させてください。

于 2010-11-19T03:29:23.337 に答える
0

私はこの種の問題を解決するためにVisualStudioを使用しました。Visual Studioでは、返されたhtmlをプログラムで解析し、それに基づいてアクションを実行できるC#コード化Webテストが可能です。

SharePoint Webサイトの負荷テストを行っていたので、事前に情報を入力する必要がありました。コンテンツの「ランダムな」ページを事前に作成するための負荷テストを作成しました。事前にテストハーネスデータベースにURLを入力して、ロードされたページをある程度制御できるようにしました。

利用可能な「記事」のリストと潜在的なコメントのリストを使用して、疑似乱数ジェネレーター(テストハーネスの非同期性のためにストアドプロシージャ内)をコーディングして、反復可能な負荷テストを取得することができます。つまり、負荷テストを実行するたびに同じ方法でサイトにデータが入力されます。

サイトをすぐに利用できる適切な方法を作成するにはある程度の努力が必要ですが、負荷テストの関連性の見返りは非常に良好です。

于 2010-11-21T22:43:16.937 に答える