рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдирдорд╕реНрддреЗ, Habr! рдпреЛ рдореЗрд░реЛ рд╕рд┐рдХреНрд╡реЗрд▓ рд╣реЛ рдЕрдШрд┐рд▓реНрд▓реЛ рдкреНрд░рдХрд╛рд╢рди, рдЬрд╕рдорд╛ рдо JMeter рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд▓рд╛рдордорд╛ рд╕рдиреНрджреЗрд╢рд╣рд░реВ рд░рд╛рдЦреНрдиреЗ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдиреЗрдЫреБред

рд╣рд╛рдореА рдПрдЙрдЯрд╛ рдареВрд▓реЛ рд╕рдВрдШреАрдп рдХрдореНрдкрдиреАрдХреЛ рд▓рд╛рдЧрд┐ рдбрд╛рдЯрд╛ рдмрд╕ рдмрдирд╛рдЗрд░рд╣реЗрдХрд╛ рдЫреМрдВред рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрд░реЛрдз рдврд╛рдБрдЪрд╛рд╣рд░реВ, рд░реВрдкрд╛рдиреНрддрд░рдгрд╣рд░реВ, рдЬрдЯрд┐рд▓ рдорд╛рд░реНрдЧрд╣рд░реВред рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рд▓рд╛рдордорд╛ рдзреЗрд░реИ рд╕рдиреНрджреЗрд╢рд╣рд░реВ рдкрдард╛рдЙрдиреБ рдкрд░реНрдЫред рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рдПрдХ рджреБрдЦрд╛рдЗ рд╣реЛ рдЬреБрди рд╣рд░реЗрдХ chiropractor рд▓реЗ рд╣реНрдпрд╛рдиреНрдбрд▓ рдЧрд░реНрди рд╕рдХреНрджреИрдиред

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдкрд░рд┐рдЪрдп

рдпрджреНрдпрдкрд┐ рдореИрд▓реЗ рд╕реБрд░реБрдорд╛ рдпреЛ рдкреАрдбрд╛ рд╕рд╣рдиреБрдкрд░реЗрдХреЛ рдерд┐рдпреЛред рдпреЛ рд╕рдмреИ RFHUtil рдмрд╛рдЯ рд╕реБрд░реБ рднрдпреЛред рд╢рдХреНрддрд┐рд╢рд╛рд▓реА, рддрд░ рдЕрдкреНрдареНрдпрд╛рд░реЛ рд░ рдбрд░рд▓рд╛рдЧреНрджреЛ: рдареАрдХ рдЫ, рддрдкрд╛рдИрдВрд▓рд╛рдИ рд░рд╕ рдерд╛рд╣рд╛ рдЫред

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдХреЗрд╣рд┐ рдЕрд╡рд╕реНрдерд╛рдорд╛ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп, рддрд░ рд╕рдХреНрд░рд┐рдп рдкреНрд░рдпреЛрдЧ рдХреЛ рдорд╛рдорд▓рд╛ рдорд╛ рд▓рдЧрд╛рддрд╛рд░ рдЧрд┐рд░рд╛рд╡рдЯред
рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдкрд░реАрдХреНрд╖рдг рдпрд╕рдХреЛ рд╕рд╛рде рдЕрд╕рдореНрднрд╡ рдЫред

JMeter рд╕рдВрдЧ рд╕рдмреИ рд╕рдЬрд┐рд▓реЛ рднрдПрдХреЛ рдЫред рдкрд╣рд┐рд▓реЛ рдЪрд░рдгрдорд╛ рдирд┐рдкреБрдгрддрд╛ рд░ рдмрд╛рдиреА рдкрд░реЗрдкрдЫрд┐, рдЖрд╢рд╛рд▓реЗ рдЦреБрд╢реАрдХреЛ рдкрд░реАрдХреНрд╖рд╛ рд▓рд┐рди рдерд╛рд▓реНрдпреЛред

рдо рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ JMS рдкреНрд░рдХрд╛рд╢рдХ рд░ JMS рдЧреНрд░рд╛рд╣рдХ рдирдореВрдирд╛рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреБред JMS рдкреЛрдЗрдиреНрдЯ-рдЯреБ-рдкреЛрдЗрдиреНрдЯрдХреЛ рд╡рд┐рдкрд░реАрдд, рдпреЛ рдЬреЛрдбреА рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдердк рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рджреЗрдЦрд┐рдиреНрдереНрдпреЛред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, JMS рдЪрдпрдирдХрд░реНрддрд╛рдорд╛ рд╕рдмреНрд╕рдХреНрд░рд╛рдЗрдмрд░рдХреЛ рд╕рд╛рде рддрдкрд╛рдИрдВрд▓реЗ рдЪрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд░ Point-to-Point рд╕рдБрдЧ рддрдкрд╛рдИрдВ рд╕рдХреНрдиреБрд╣реБрдиреНрди (рд╡рд╛ рдпреЛ рд╡рд┐рдзрд┐ рдзреЗрд░реИ рд╕реНрдкрд╖реНрдЯ рдЫреИрди)ред

рдирдореВрдирд╛рд╣рд░реВ рддрдпрд╛рд░ рдЧрд░реНрджреИ

JMS рдкреНрд░рдХрд╛рд╢рдХ

  • рд╕реЗрдЯрдЕрдк - рдкреНрд░рддреНрдпреЗрдХ рдирдореВрдирд╛ред рдЕрдкрд╛рдЪреЗ рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░реНрджрдЫ рдпрджрд┐ рд▓рд╛рдо/рд╡рд┐рд╖рдпрд╣рд░реВ рдЪрд░ рдорд╛рд░реНрдлрдд рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░рд┐рдПрдХреЛ рдЫ рднрдиреЗ рдпреЛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
  • рдореНрдпрд╛рдж рд╕рдорд╛рдкреНрддрд┐ (ms) = 120000ред рдЕрд╕рдлрд▓ рднрдПрдХреЛ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдкрд░реАрдХреНрд╖рдг рдЕрдиреБрд░реЛрдзрд╣рд░реВ 2 рдорд┐рдиреЗрдЯ рдкрдЫрд┐ рд▓рд╛рдордмрд╛рдЯ рдЧрд╛рдпрдм рд╣реБрдиреЗрдЫрдиреНред
  • рдЧреИрд░-рдирд┐рд░рдиреНрддрд░ рдбреЗрд▓рд┐рднрд░реА рдореЛрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рд╣реЛ? - рд╕рддреНрдпред IBM рдЕрдиреБрдореЛрджрди рдЧрд░реНрджрдЫрддреНрдпреЛ рдирд┐рд░рдиреНрддрд░ рдореЛрдбрд▓реЗ рдЕрдЪрд╛рдирдХ рд╡рд┐рдлрд▓рддрд╛рдХреЛ рдШрдЯрдирд╛рдорд╛ рдкреНрд░рд╕рд╛рд░рд┐рдд рд╕рдиреНрджреЗрд╢рд╣рд░реВрдХреЛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╕рдВрд░рдХреНрд╖рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрджрдЫред рд░ рдЧреИрд░-рдирд┐рд░рдиреНрддрд░ рдореЛрдбрдорд╛ рдЫрд┐рдЯреЛ рд╡рд┐рдирд┐рдордпред рдкрд░реАрдХреНрд╖рдг рдЙрджреНрджреЗрд╢реНрдпрдХрд╛ рд▓рд╛рдЧрд┐, рдЧрддрд┐ рдмрдвреА рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЫред

рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд╢рдХрдорд╛ рдореИрд▓реЗ jms рдЧреБрдг рд╕реЗрдЯ рдЧрд░реНрдЫреБ рдЬреБрди рд╕рджрд╕реНрдпрд▓реЗ JMS рдЪрдпрдирдХрд░реНрддрд╛рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗрдЫред рдкреНрд░рддреНрдпреЗрдХ рд╕рдмрдорд┐рд╢рдирдХреЛ рд▓рд╛рдЧрд┐, рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рдкрд░реАрдХреНрд╖рдг рдпреЛрдЬрдирд╛ рддрддреНрд╡рдорд╛ рдЕрдирд┐рдпрдорд┐рдд рдорд╛рди рдЙрддреНрдкрдиреНрди рд╣реБрдиреНрдЫ:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдпрд╕ рддрд░рд┐рдХрд╛рд▓реЗ рддрдкрд╛рдЗрдБ рдирд┐рд╢реНрдЪрд┐рдд рд╣реБрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдХрд┐ рд╕рд╣реА рд╕рдиреНрджреЗрд╢ рдкрдврд┐рдПрдХреЛ рдЫред

рдкреВрд░реНрд╡-рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░рд┐рдПрдХреЛ JMS рдкреНрд░рдХрд╛рд╢рдХрдХреЛ тАЛтАЛрдЕрдиреНрддрд┐рдо "рдЦрд╛рд▓реА":

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

JMS рд╕рджрд╕реНрдп

  • рд╕реЗрдЯрдЕрдк - рдкреНрд░рддреНрдпреЗрдХ рдирдореВрдирд╛ред рдЦреИрд░, рддрдкрд╛рдИрдВ рдмреБрдЭреНрдиреБрд╣реБрдиреНрдЫред
  • рдЯрд╛рдЗрдордЖрдЙрдЯ (ms) = 100000ред рдпрджрд┐ рдЕрдиреБрд░реЛрдз 100 рд╕реЗрдХреЗрдиреНрдб рдкрд░реНрдЦрд╛рдЗ рдкрдЫрд┐ рд▓рд╛рдордорд╛ рдЖрдЗрдкреБрдЧреЗрди рднрдиреЗ, рдХреЗрд╣рд┐ рдЧрд▓рдд рднрдпреЛред
  • рдирдореВрдирд╛рд╣рд░реВ рдмреАрдЪ рд░реЛрдХреНрдиреБрд╣реЛрд╕реН? - рд╕рддреНрдпред

JMS рдЪрдпрдирдХрд░реНрддрд╛ - рдзреЗрд░реИ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХреБрд░рд╛ред рдЕрдиреНрддрд┐рдо JMS рд╕рджрд╕реНрдп:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдкреНрд░рд╕рд╛рд░рд┐рдд рд╕рдиреНрджреЗрд╢рд╣рд░реВрдорд╛ рд╕рд┐рд░рд┐рд▓рд┐рдХ рд╡рд░реНрдгрдорд╛рд▓рд╛рд╕рдБрдЧ рдХрд╕рд░реА рд╡реНрдпрд╡рд╣рд╛рд░ рдЧрд░реНрдиреЗред JMeter рдорд╛, рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛, рдкреНрд░реВрдлрд░реАрдбрд┐рдЩ рдкрдЫрд┐, рдпреЛ рдХреБрд░реВрдк рд░реВрдкрдорд╛ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реБрдиреНрдЫред рдпрд╕рдмрд╛рдЯ рдмрдЪреНрди рд░ рд╕рдБрдзреИ рд░ рдЬрддрд╛рддрддреИ рдорд╣рд╛рди рд░ рд╢рдХреНрддрд┐рд╢рд╛рд▓реАрдХреЛ рдЖрдирдиреНрдж рд▓рд┐рди, рддрдкрд╛рдИрдВрд▓реЗ:

  1. JMeter "рд▓рдиреНрдЪрд░" рдорд╛ JVM рддрд░реНрдХ рдердкреНрдиреБрд╣реЛрд╕реН:
    -Dfile.encoding=UTF-8
  2. JSR223 рдкреЛрд╕реНрдЯрдкреНрд░реЛрд╕реЗрд╕рд░рд▓рд╛рдИ рдЧреНрд░реВрд╡реА рд▓рд╛рдЗрдирдХреЛ рд╕рд╛рде рд╕рдмреНрд╕рдХреНрд░рд╛рдЗрдмрд░рдорд╛ рдердкреНрдиреБрд╣реЛрд╕реН:
    prev.setDataEncoding("UTF-8")

рдкрд╛рда рдкрдард╛рдЙрдиреБрд╣реЛрд╕реН

рдЕрд▓реНрдЫреА рд╡рд┐рдХрд▓реНрдкред рднрд░реНрдЦрд░реИ рд▓рд┐рдЦрд┐рдд рдкрд░реАрдХреНрд╖рдгрд╣рд░реВ рдбрд┐рдмрдЧ рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреБрдХреНрддред рд╡рд╛ рдХреЗрд╕рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЬрдм рддрдкрд╛рдЗрдБ рдХрдореНрддрд┐рдорд╛ рдХреЗрд╣рд┐ рд╕рд╛рдиреЛ рдкрдард╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫред рд╡рд┐рдХрд▓реНрдк рдЪрдпрди рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╕рдиреНрджреЗрд╢ рд╕реНрд░реЛрдд - Textarea рд░ рд╕рдиреНрджреЗрд╢рдХреЛ рдореБрдЦреНрдп рднрд╛рдЧ рдкрд╛рда рдмреНрд▓рдХрдорд╛ рд░рд╛рдЦреНрдиреБрд╣реЛрд╕реН:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдлрд╛рдИрд▓ рдЯреНрд░рд╛рдиреНрд╕рдлрд░

рд╕рдмреИрднрдиреНрджрд╛ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХрд▓реНрдкред рдзреЗрд░реИ рдкрд░рд┐рджреГрд╢реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреБрдХреНрддред рд╡рд┐рдХрд▓реНрдк рдЪрдпрди рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╕рдиреНрджреЗрд╢ рд╕реНрд░реЛрдд - рдлрд╛рдЗрд▓рдмрд╛рдЯ рд░ рдХреНрд╖реЗрддреНрд░рдорд╛ рд╕рдиреНрджреЗрд╢ рдЬрд╛рдиреЗ рдмрд╛рдЯреЛ рд╕рдВрдХреЗрдд рдЧрд░реНрдиреБрд╣реЛрд╕реН рдлрд╛рдЗрд▓ - рдлрд╛рдЗрд▓рдирд╛рдо:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдлрд╛рдЗрд▓рд▓рд╛рдИ рдкрд╛рда рдХреНрд╖реЗрддреНрд░рдорд╛ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрджреИ

рд╕рдмреИрднрдиреНрджрд╛ рдмрд╣реБрдореБрдЦреА рд╡рд┐рдХрд▓реНрдкред рдзреЗрд░реИ рдкрд░рд┐рджреГрд╢реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреБрдХреНрдд + JMS Point-to-Point рдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ рдЬрд╣рд╛рдБ рджреЛрд╕реНрд░реЛ рдкрдард╛рдЙрдиреЗ рд╡рд┐рдХрд▓реНрдк рдЫреИрди:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рдмрд╛рдЗрдЯ рдПрд░реЗ рдкрд╛рд╕ рдЧрд░реНрджреИ

рд╕рдмреИрднрдиреНрджрд╛ рдЧрд╛рд╣реНрд░реЛ рд╡рд┐рдХрд▓реНрдкред рдмрд┐рдирд╛ рд╡рд┐рд░реВрдкрдг, SMS рд░ perturbation рдмрд┐рдирд╛, рдмрд╛рдЗрдЯрдорд╛ рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдкрдорд╛ рд╕рд╣реА рдкреНрд░рд╕рд╛рд░рдг рдЬрд╛рдБрдЪ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреБрдХреНрддред рддрдкрд╛рдИрдВрд▓реЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд JMeter рдорд╛ рдпреЛ рдЧрд░реНрди рд╕рдХреНрд╖рдо рд╣реБрдиреБрд╣реБрдиреЗ рдЫреИрдиред рдпрд╣рд╛рдБ рдорд▓рд╛рдИ рдкрдХреНрдХреИ рдпрд╕ рдмрд╛рд░реЗ рднрдирд┐рдПрдХреЛ рдерд┐рдпреЛред

рддреНрдпрд╕реИрд▓реЗ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрдиреБрдкрд░реНтАНрдпреЛ рд╕реНрд░реЛрддрд╣рд░реВ рд░ рдкрд░рд┐рдорд╛рд░реНрдЬрди рдЧрд░реНрдиреБрд╣реЛрд╕реН рдХреЛрдб JMS рд╕рджрд╕реНрдпред

рд╡рд┐рдзрд┐рдорд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░рд┐рдПрдХреЛ рдЫ extractContent(..) рд░реЗрдЦрд╛:

buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");

рдЦреБрд▓реНрд▓рд╛:

byte[] bytes = new byte[(int) bytesMessage.getBodyLength()];
bytesMessage.readBytes(bytes);
try {
	buffer.append(new String(bytes, "UTF-8"));
} catch (UnsupportedEncodingException e) {
	throw new RuntimeException(e);
}

рд░ JMeter рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдгред

рдмрд╛рдБрдХреА рд╕рдмреИ JSR223 рдирдореВрдирд╛рд╣рд░реВ рдердкреНрди рд╣реЛред рдЕрдирд┐рдпрдорд┐рдд рдмрд╛рдЗрдЯрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рднрдПрдХреЛ DAT рдлрд╛рдЗрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдкреНрд░рдХрд╛рд╢рдХ/рд╕рджрд╕реНрдпрддрд╛ рдЬреЛрдбреАрдХреЛ рдЕрдЧрд╛рдбрд┐ рдкрд╣рд┐рд▓реЛ рд╣реЛ:

import org.apache.commons.lang3.RandomUtils;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

vars.put("PATH_TO_BYTES", "C:temprandomBytes.dat");
File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
byte[] arr = RandomUtils.nextBytes((int)(Math.random()*10000));
        try {
            FileOutputStream fos = new FileOutputStream(RESULT_FILE);
            fos.write(arr);
            fos.close();
        } catch (IOException e) {
            System.out.println("file not found");
        }

рджреЛрд╕реНрд░реЛ - рд╕реНрдХреНрд░рд┐рдкреНрдЯрдХреЛ рдЕрдиреНрддреНрдпрдорд╛, рдлрд╛рдЗрд▓ рдореЗрдЯрд╛рдЙрдБрдЫ:

import java.io.File;

File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
RESULT_FILE.delete();

рд░ рдкреНрд░рдХрд╛рд╢рдХрдорд╛ рдлрд╛рдЗрд▓рдорд╛ рдорд╛рд░реНрдЧ рдердкреНрди рдирдмрд┐рд░реНрд╕рдиреБрд╣реЛрд╕реН:

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рд░ рд╕рджрд╕реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ JSR223 рджрд╛рд╡реАрдорд╛ рдкрдирд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрд╣реЛрд╕реН - рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдХреЛ рд▓рд╛рдордорд╛ рдЖрдЗрдкреБрдЧреЗрдХрд╛рд╣рд░реВрд╕рдБрдЧ рд╕реНрд░реЛрдд рдмрд╛рдЗрдЯрд╣рд░реВ рддреБрд▓рдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;

Path path = Paths.get(vars.get("PATH_TO_BYTES"), new String[0]);
byte[] originalArray = Files.readAllBytes(path);
byte[] changedArray = ctx.getPreviousResult().getResponseData();
System.out.println(changedArray.length);

if (Arrays.equals(originalArray, changedArray))
	{
     	SampleResult.setResponseMessage("OK");

	} else {
	   SampleResult.setSuccessful(false);
     	   SampleResult.setResponseMessage("Comparison failed");
	   SampleResult.setResponseData("Bytes have changed","UTF-8");
     	   IsSuccess=false;
	}

рдирд┐рд╖реНрдХрд░реНрд╖рдорд╛

рдореИрд▓реЗ рд▓рд╛рдорд╣рд░реВрдорд╛ рд╕рдиреНрджреЗрд╢рд╣рд░реВ рдкрдард╛рдЙрдиреЗ рдЪрд╛рд░рд╡рдЯрд╛ рддрд░рд┐рдХрд╛рд╣рд░реВ рд╡рд░реНрдгрди рдЧрд░реЗрдВ, рдЬреБрди рдо рд╡реНрдпрд╡рд╣рд╛рд░рдорд╛ рд╣рд░реЗрдХ рджрд┐рди рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреБред рдорд▓рд╛рдИ рдЖрд╢рд╛ рдЫ рдХрд┐ рдпреЛ рдЬрд╛рдирдХрд╛рд░реАрд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рдЬреАрд╡рдирд▓рд╛рдИ рд╕рдЬрд┐рд▓реЛ рдмрдирд╛рдЙрдБрдЫред рдирд┐рд░рдиреНрддрд░рддрд╛рдорд╛, рдо рдПрдЙрдЯрд╛ рдПрдХреНрд╕рдЪреЗрдиреНрдЬ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдиреЗ рдореЗрд░реЛ рдЕрдиреБрднрд╡рдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдиреЗ рдпреЛрдЬрдирд╛ рдЧрд░реНрдЫреБ рдЬрд╣рд╛рдБ рдПрдХ рдЫреЗрдЙрдорд╛ рд▓рд╛рдо рд░ рдЕрд░реНрдХреЛрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рд╡рд╛ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рд╣реБрдиреНрдЫред

рдЖрдлреНрдиреЛ рд╕рдордп рдмрдЪрдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рд░ рддрдкрд╛рдЗрдБрдХреЛ рдзреНрдпрд╛рди рдХреЛ рд▓рд╛рдЧреА рдзрдиреНрдпрд╡рд╛рджред

рдХрддрд╛рд░рд╣рд░реВ рд░ JMeter: рдкреНрд░рдХрд╛рд╢рдХ рд░ рдЧреНрд░рд╛рд╣рдХрд╕рдБрдЧ рд╕рд╛рдЭреЗрджрд╛рд░реА рдЧрд░реНрджреИ

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди