BeanShellのアサーション

ユーザーがでjmeter-「BeanShellのアサーション」でアサーションをカスタマイズすることができます。そのアサーションスクリプトを達成するための自由度と柔軟性 

BeanShellのアサーションインターフェイス説明 

接頭辞を追加することなく、直接呼び出すことができますBeanShellの変数。 

1.log印刷ログlog.info(「コンソールで印刷ログ」)。 

SampleResultオブジェクトを取得2.SampleResult、あなたは、このオブジェクトを介して必要な情報を得ることができます 

Responseオブジェクトを取得します3.Response、対応する情報は、このオブジェクトによって取得することができます 

真、それはfalseを返した場合成功する、インタフェースの呼び出しが成功したかどうかを確認4.Failure失敗です 

5.FailureMessageの障害情報、時間が設定されていない故障情報は空です。この情報は、設定することができます 

] [レスポンスボディタイプはバイトでゲット6.ResponseData 

7.ResponseCode正常インタフェース・コード200を返します 

MSG成功を得る8.ResponseMessageすることはOKです 

9.ResponseHeadersがサーバから返されたインターフェイスヘッダ情報を取得します 

10.RequestHeadersクライアントによって要求されたヘッダ情報を取得します 

11.SampleLabelは、インタフェース要求の名前を取得します 

12.SamplerData取得要求URLと体 

13.ctx代表コンテキスト情報を直接使用することができ 

14.varsは、取得したデータが、あなたはまた、ユーザ定義の変数は(取得)を取得することができますJMeterの変数(入れ)となり、直接呼び出すことができます 

例えば: 

1. HTTPサンプルでBeanShellのアサーションを追加します。 

2.スクリプトを書きます 

 

1インポートorg.apache.jmeter.assertions。

2インポートorg.apache.jmeter.samplers.SampleResult。

3輸入org.apache.jmeter.assertions.AssertionResult。

4輸入org.json *。;

5

6列response_data = prev.getResponseDataAsString(); //取得インターフェイス応答データが7 JSONObject data_obj =新しいJSONObject(response_data)を返さ; // JSONに変換

// 8コードが0に等しい場合、次いで9文字コード= data_obj.get(「コード」)の内部フィールドを取る0に等しいと判断します。

10 IF(code.equals(「0」))

11 {

12弦USER_NAME = data_obj.get(「データ」)(「ユーザ」)を取得する(「ユーザ名」)を取得のtoString()。。。。

ここで13 // MY_NAMEは、ユーザー定義変数またはインタフェース戻る14の前に取得されたことがある場合(user_name.equals($ {MY_NAME})){

15失敗=偽; // falseに設定するには、結果に木が緑のサンプルがあり、正常に実行にインターフェイスを示し

16 // 17 ......フォローアップアクションを実行します。

18}

他の19 {

20 21} //行う他のアクション

22}

他の23

24 {

25失敗= TRUE; //直接故障解析インターフェース実行結果ツリーに(真の)赤26 prev.setStopThreadを試料の故障を示し、アサーションが失敗した場合//、インタフェースが後で再び実行する必要はなく、直接サスペンション27}

おすすめ

転載: blog.csdn.net/qq_35577990/article/details/93735385
おすすめ