2011-07-07 7 views
0

私はjmeterを初めて使用しており、テスト計画をまとめる作業中です。次のように私が遭遇したハードルがある:jmeter help - ポーリング/ wメタリフレッシュに関するテスト

まず、POSTは、次にprocessForm.aspx

に行われ、ユーザーがこのページには、結果をすぐにリダイレクトするのいずれかpleaseWait.aspx

にリダイレクトされます。 aspx ORロードし、META REFRESHタグを5秒間にリフレッシュするように設定します(この手順が繰り返されます)。それは物事のように働いているにもかかわらず、(失敗したアサーションにつながるので、私はこの方法のために気にしない - しかし

HTTP Sampler POST to processForm.aspx 
    Assert Response contains "<something on pleaseWait.aspx>" 
While LAST 
    HTTP Sampler GET to pleaseWait.aspx 
    Assert Response contains "<something on results.aspx>" 

: -

は今、私は、これは次のようにして実行するために取得することができます期待される)。私はこれを行うには別の方法があるに違いないと確信していますか?私よりJMeterに詳しい人はいますか?

UPDATE:

は、それが正規表現抽出の代わりに、アサーションを使用して行く手に入れました。

1)試験計画ルート 2のユーザー定義変数のセクションを追加しますが)、それに変数を追加「LoginWait」と「偽」

HTTP Sampler POST to processForm.aspx 
    RegEx Extract Response Body contains "<something on pleaseWait.aspx>" into LoginWait 
While ${LoginWait} 
    HTTP Sampler GET to pleaseWait.aspx 
    RegEx Extract Response Body contains "<something on pleaseWait.aspx>" into LoginWait 
... 

答えて

0

あなたのHTTPリクエストの「従うリダイレクト」を使用して試みることができます。それはあなたが必要とするロジックを排除し、あなたが行っているページにあなたを連れて行くでしょう。

+0

私はすでに「フォローリダイレクト」を使用しています。ちょっとしたことは、メタリフレッシュに従わないので、pleaseWait.aspxページは「リダイレクトチェーンの最後の停止」になります。アサーションの代わりにjmeter変数を使用することで問題を回避することができると考えています.-これは、次のようなことが可能です:processForm.aspxへのHTTPリクエスト - >結果にA変数が含まれている場合X = Aそうでない場合、結果にBが含まれている場合、変数X = Bを設定しますか?そして、私はこれをLASTの代わりにwhileループで使うことができました – mikey

+0

あなたは、2つの方法のうちの1つを提案することができます。どちらの場合でも、正規表現を使用して結果をスクラップします。a)IFコントローラをUserDefinedVariablesとともに使用するか、b)beanshellプリプロセッサを使用して変数を設定する簡単なJavaコードを書きます。 – BlackGaff

+0

これは生きている!!!! – mikey

関連する問題