2

特定のクエリ文字列とポスト変数の値が実行ごとに変化する Web アプリケーションに対して JMeters テストを作成するときに使用する最適な戦略は何ですか。

クイック、一般的な例

  1. あなたはウェブページに行きます
  2. フォームに情報を入力する
  3. [保存] をクリックします
  4. 舞台裏で、新しいレコードがデータベースに入力されます
  5. 入力したばかりのレコードを編集したいので、別の Web ページに移動します。舞台裏では、作成したばかりの行のデータベース ID を持つパラメーターをページに渡しています。

上記のテストのステップ 5 を実行すると、ページ パラメータ/データベース ID が毎回変更されます。

私が現在使用しているワークフロー/戦略は

  1. 上記のアクションを使用してテストを記録する
  2. クエリ文字列変数が実行ごとに変化する可能性がある各場所をメモします。
  3. XPath または正規表現エクストラクタを使用して、応答から値を引き出して JMeter 変数に入れます。
  4. ハードコーディングされたパラメーターの該当するすべてのインスタンスを上記の変数に置き換えます。

これは機能し、ある程度自動化できます。ただし、面倒で、エラーが発生しやすく、壊れやすいものになる可能性があります。この状況を処理するためのより良い/一般的に受け入れられている方法はありますか? (または、これがほとんどの人が JMeter を使用してログを再生する理由ですか? (-;)

4

2 に答える 2

3

私にはあなたが正しい軌道に乗っているように聞こえます。JMeter で実現できる最善の方法は、正規表現または xpath ポスト プロセッサを使用してページ変数を抽出することです。ただし、これはスケーラブルなソリューションではなく、維持または成長がますます難しくなるという点で、あなたは絶対に正しいです。

ポイントに到達した場合は、この種の問題に特化したツールを検討することをお勧めします。WatirなどのWebテストツールを見てください。投稿パラメーターの変更を自動的に処理します。ただし、データベースの更新が必要な場合はパラメーターを抽出する必要がありますが、Watir を使用すると、コードの再利用が改善され、問題が軽減されます。

于 2009-05-20T08:09:25.587 に答える
2

JDBCアサーション内のJMeter変数にパラメーターを格納することにより、JMeterで同様のシナリオをテストすることに大きな成功を収めました。次に、http get / postを実行し、BSFアサーションを使用し、javascriptが応答の複雑な検証を実行します。それが役に立てば幸い

于 2009-04-09T21:54:30.120 に答える