1.背景
カスタムJavaでの要求で複数の要求を作成する方法:最近、私は、問題の古くからの友人に相談しましたか?彼らは唯一のJavaの形(符号変調必要なjarパッケージに封入成分)でこのような要求に基づいて、要求の古い反応を送信することができます。この問題は、作者の中で最近起こった飛行試験QQグループのみSubResultとそこに答えた、誰かが相談し、。
2.目的
SamplerResultの書き方以上のJMeter JavaRequestの要求:目標は、下深く掘ることです。
3.戦闘
私が繰り返し要求するJavaスクリプトを書かれている前に、良好な構造記事の要求に同意構築し、Javaスクリプト環境にどのようにこの時間は、自分のBaiduの下に誰も言っていません。実際には、主に、アイデアの話、私は記事では、問題を解決するためのアイデアについて主に書いた後、ほとんどを含みます。
- この問題が発生し、最初思った私はSubResultである(なぜなら、長期的な研究の著者JMeterの基本となるソースコード)
そして、コードをロールアップし始めました。
まあ、私は非常に完璧な感じ!しかし、実行後:
図から見ると、それは投げ:sampleEndは二度呼び出さ異常、私は微調整のコードを実行します。
まあ、気持ちは次再び、問題はないはず。
私は、大きな音やエラーをこします。。。報告setEndTime setStartTime後に呼び出さなければなりませんので、私はこの例外がスローされた場所を確認するためにJMeterの基礎となるコードを見ました。図は次のとおりです。
さて?ゼロののStartTime値は、私はもっともっと面白いと感じ、この例外がスローされます。私はJMeterのAPIドキュメントを見に行ったこの質問では、この発見は、この現象の殺人につながりました。
ときに戻り翻訳:
addRawSubResult(SampleResult subResult) | 結果は、いずれかの親フィールドを更新せずにコレクションに子を追加します。 |
addSubResult(SampleResult subResult) | 親と子の結果バイト数と終了時間を調整しました。 |
addSubResult(SampleResult subResult、ブールrenameSubResults) | 親と子の結果バイト数と終了時間を調整しました。 |
私たちは、コードが使用addSubResult(SampleResult subResult、ブールrenameSubResults)、それはまた、コードを調整します:
結果:
[OK]を、正常に実行さ(Log4j2は、著者がlog4j2.xmlに設定されていないので、詳細については気にしない、異常が現れた)が、全体的な感じや、私がマイクロ変更コードの下に、よりリアルな欠点を持っています?:
次のように大丈夫、JMeterのにパックが実行されます。
私は、重合レポートを見ると、彼らは問題が発生しました。。。
さて?唯一の親リクエスト集計されたデータを表示し、なぜサブリクエストデータを表示しませんか?私は今、解決策があるが見つかりました:実行すると最初のJTL、再びJTL結果重合レポートでこのファイルを開くには、シーンの最後の結果を確認するには、ファイルを保存します。
大丈夫、最終的に問題を解決します。。。あなたがよりよい解決策を見つけた場合、私たちに知らせてください!