αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αžŸαž½αžŸαŸ’αžαžΈ αž αžΆαž”! αž“αŸαŸ‡αž‡αžΆαžœαž‚αŸ’αž‚αž”αž“αŸ’αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž€αžΆαžšαž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž˜αž»αž“αŸ”αžŠαŸ‚αž›αž€αŸ’αž“αž»αž„αž“αŸ„αŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž‡αž˜αŸ’αžšαžΎαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαžΆαž€αŸ‹αžŸαžΆαžšαž‡αžΆαž‡αž½αžšαžŠαŸ„αž™αž”αŸ’αžšαžΎ JMeter αŸ”

αž™αžΎαž„αž€αŸ†αž–αž»αž„αž”αž„αŸ’αž€αžΎαžαž‘αžΆαž“αž€αŸ’αžšαž»αž„αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αžŸαž αž–αŸαž“αŸ’αž’αžŠαŸαž’αŸ†αž˜αž½αž™αŸ” αž‘αž˜αŸ’αžšαž„αŸ‹αžŸαŸ†αžŽαžΎαž•αŸ’αžŸαŸαž„αŸ— αž€αžΆαžšαž”αŸ†αž”αŸ’αž›αŸ‚αž„ αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž•αŸ’αž›αžΌαžœαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αž αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž•αŸ’αž‰αžΎαžŸαžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αž‘αŸ…αž€αžΆαž“αŸ‹αž‡αž½αžšαŸ” αžŠαŸ„αž™αžŠαŸƒαž‚αžΊαž‡αžΆαž€αžΆαžšαžˆαžΊαž…αžΆαž”αŸ‹αžŠαŸ‚αž›αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαž”αŸ‹ chiropractor αž’αžΆαž…αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αžΆαž“αž‘αŸαŸ”

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αžŸαŸαž…αž€αŸ’αžαžΈαžŽαŸ‚αž“αžΆαŸ†

αž‘αŸ„αŸ‡αž”αžΈαžαŸ’αž‰αž»αŸ†αžαŸ’αžšαžΌαžœαž‘αŸ’αžšαžΆαŸ†αž“αžΉαž„αž€αžΆαžšαžˆαžΊαž…αžΆαž”αŸ‹αž“αŸαŸ‡αžŠαŸ†αž”αžΌαž„αž€αŸαžŠαŸ„αž™αŸ” αžœαžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‡αžΆαž˜αž½αž™ RFHUtil αŸ” αž˜αžΆαž“αžαžΆαž˜αž–αž› αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž†αŸ’αž‚αž„ αž“αž·αž„αž‚αž½αžšαž±αŸ’αž™αžαŸ’αž›αžΆαž…αŸ– αž˜αŸ‚αž“αž αžΎαž™ αž’αŸ’αž“αž€αžŸαŸ’αž‚αžΆαž›αŸ‹ Rus αŸ”

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž˜αž·αž“αž’αžΆαž…αžαŸ’αžœαŸ‡αž”αžΆαž“αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžαŸ’αž›αŸ‡ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αž€αžΆαžšαžαž™αž…αž»αŸ‡αž‡αžΆαž›αŸ†αžŠαžΆαž”αŸ‹αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαž€αž˜αŸ’αž˜αŸ”
αž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž„αžΆαž™αžŸαŸ’αžšαž½αž›αž‚αžΊαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαž‡αžΆαž˜αž½αž™αžœαžΆαŸ”

αž‡αžΆαž˜αž½αž™αž“αžΉαž„ JMeter αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž”αžΆαž“αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹β€‹αž–αžΈβ€‹αžŠαŸ†αžŽαžΆαž€αŸ‹β€‹αž€αžΆαž›β€‹αžŠαŸ†αž”αžΌαž„β€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αžŸαŸ’αž‘αžΆαžαŸ‹β€‹αž‡αŸ†αž“αžΆαž‰ αž“αž·αž„β€‹αžŸαŸŠαžΆαŸ†β€‹αž“αžΉαž„β€‹αžœαžΆ αž€αŸ’αžαžΈβ€‹αžŸαž„αŸ’αžƒαžΉαž˜β€‹αž”αžΆαž“β€‹αž…αžΆαž”αŸ‹β€‹αž•αŸ’αžαžΎαž˜β€‹αžšαŸ‡β€‹αž‘αžΎαž„β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αž’αŸ’αžœαžΎβ€‹αžαŸαžŸαŸ’αžβ€‹αžŠαŸβ€‹αžšαžΈαž€αžšαžΆαž™αŸ”

αžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαžΎαž™αŸ‰αžΆαž„αžŸαž€αž˜αŸ’αž˜αž“αžΌαžœ JMS Publisher αž“αž·αž„ JMS Subscriber samplers αŸ” αž˜αž·αž“αžŠαžΌαž… JMS Point-to-Point αž‚αžΌαž“αŸαŸ‡αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž›αž”αŸ’αžšαžΎαž‡αžΆαž„αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αž‡αžΆαž˜αž½αž™ Subscriber αž€αŸ’αž“αž»αž„ JMS Selector αž’αŸ’αž“αž€αž’αžΆαž…αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž’αžαŸαžšαž˜αž½αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαž˜αž½αž™αž“αžΉαž„ Point-to-Point αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž… (αž¬αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžšαž“αŸαŸ‡αž˜αž·αž“αž…αŸ’αž”αžΆαžŸαŸ‹αž‘αŸ)αŸ”

αž€αžΆαžšαžšαŸ€αž”αž…αŸ†αž‚αŸ†αžšαžΌ

αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž– JMS

  • αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ - αž‚αŸ†αžšαžΌαž“αžΈαž˜αž½αž™αŸ—αŸ” Apache αžŽαŸ‚αž“αžΆαŸ† αž”αŸ’αžšαžΎαž‡αž˜αŸ’αžšαžΎαžŸαž“αŸαŸ‡αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž‡αž½αžš/αž”αŸ’αžšαž’αžΆαž“αž”αž‘αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαžΆαž˜αžšαž™αŸˆαž’αžαŸαžšαŸ”
  • αž•αž»αžαž€αŸ†αžŽαžαŸ‹ (ms) = 120000αŸ” αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž”αžšαžΆαž‡αŸαž™ αžŸαŸ†αžŽαžΎαžŸαžΆαž€αž›αŸ’αž”αž„αž“αžΉαž„αž”αžΆαžαŸ‹αž–αžΈαž‡αž½αžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈ 2 αž“αžΆαž‘αžΈαŸ”
  • αž”αŸ’αžšαžΎαžšαž”αŸ€αž”αž…αŸ‚αž€αž…αžΆαž™αž˜αž·αž“αž”αž“αŸ’αž? - αž–αž·αžαŸ” αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“ IBM αž’αž“αž»αž˜αŸαžαžšαž”αŸ€αž”β€‹αž”αž“αŸ’αžβ€‹αž“αŸ„αŸ‡β€‹αž’αžΆαž“αžΆβ€‹αž”αžΆαž“β€‹αž“αžΌαžœβ€‹αž€αžΆαžšβ€‹αžšαž€αŸ’αžŸαžΆβ€‹αž‘αž»αž€β€‹αžŠαŸ‚αž›β€‹αž’αžΆαž…β€‹αž‘αž»αž€β€‹αž…αž·αžαŸ’αžβ€‹αž”αžΆαž“β€‹αž“αŸƒβ€‹αžŸαžΆαžšβ€‹αžŠαŸ‚αž›β€‹αž”αžΆαž“β€‹αž”αž‰αŸ’αž‡αžΌαž“β€‹αž€αŸ’αž“αž»αž„β€‹αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸβ€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αž”αžšαžΆαž‡αŸαž™β€‹αž—αŸ’αž›αžΆαž˜αŸ—αŸ” αž“αž·αž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž›αžΏαž“αž‡αžΆαž„αž˜αž»αž“αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž”αŸ€αž”αž˜αž·αž“αž”αž“αŸ’αžαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ„αž›αž”αŸ†αžŽαž„αžŸαžΆαž€αž›αŸ’αž”αž„ αž›αŸ’αž”αžΏαž“αž‚αžΊαžŸαŸ†αžαžΆαž“αŸ‹αž‡αžΆαž„αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™αž“αžΈαž˜αž½αž™αŸ— αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž›αž€αŸ’αžαžŽαžŸαž˜αŸ’αž”αžαŸ’αžαž· jms αžŠαŸ‚αž›αž’αžαž·αžαž·αž‡αž“αž“αžΉαž„αž”αŸ’αžšαžΎαž“αŸ…αž€αŸ’αž“αž»αž„ JMS Selector αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαžΆαž€αŸ‹αžŸαŸ’αž“αžΎαž“αžΈαž˜αž½αž™αŸ— αžαž˜αŸ’αž›αŸƒαž…αŸƒαžŠαž“αŸ’αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž“αŸ…αž€αŸ’αž“αž»αž„αž’αžΆαžαž»αž•αŸ‚αž“αž€αžΆαžšαžŸαžΆαž€αž›αŸ’αž”αž„αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αžœαž·αž’αžΈαž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΆαž€αžŠαžαžΆαžŸαžΆαžšαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αžΆαž“αŸ”

"αž‘αž‘αŸ" αž…αž»αž„αž€αŸ’αžšαŸ„αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž– JMS αžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‡αžΆαž˜αž»αž“αŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž’αŸ’αž“αž€αž‡αžΆαžœ JMS

  • αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ - αž‚αŸ†αžšαžΌαž“αžΈαž˜αž½αž™αŸ—αŸ” αž’αž‰αŸ’αž…αžΉαž„αž’αŸ’αž“αž€αž™αž›αŸ‹αž αžΎαž™αŸ”
  • αž’αžŸαŸ‹αž–αŸαž› (ms) = 100000αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαŸ†αžŽαžΎαž˜αž·αž“αž˜αž€αžŠαž›αŸ‹αž€αŸ’αž“αž»αž„αž‡αž½αžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈ 100 αžœαž·αž“αžΆαž‘αžΈαž“αŸƒαž€αžΆαžšαžšαž„αŸ‹αž…αžΆαŸ† αž“αŸ„αŸ‡αž˜αžΆαž“αž’αŸ’αžœαžΈαž˜αž½αž™αžαž»αžŸαž”αŸ’αžšαž€αŸ’αžšαžαžΈαŸ”
  • αžˆαž”αŸ‹αžšαžœαžΆαž„αž‚αŸ†αžšαžΌ? - αž–αž·αžαŸ”

αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ JMS - αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŽαžΆαžŸαŸ‹αŸ” αžšαžΏαž„. αž’αŸ’αž“αž€αž‡αžΆαžœ JMS αž…αž»αž„αž€αŸ’αžšαŸ„αž™αŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αžšαž”αŸ€αž”αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαž˜αž½αž™αž’αž€αŸ’αžαžšαž€αŸ’αžšαž˜ Cyrillic αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΌαž“αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„ JMeter αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž’αžΆαž“αž—αŸαžŸαŸ’αžαž»αžαžΆαž„ αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž™αŸ‰αžΆαž„αž…αŸ’αžšαž›αŸ†αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ€αžŸαžœαžΆαž„αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡ αž“αž·αž„αžšαžΈαž€αžšαžΆαž™αž‡αžΆαž˜αž½αž™αž—αžΆαž–αž’αžŸαŸ’αž…αžΆαžšαŸ’αž™ αž“αž·αž„αž˜αžΆαž“αž’αŸ†αžŽαžΆαž…αž‡αžΆαž“αž·αž…αŸ’αž… αž“αž·αž„αž‚αŸ’αžšαž”αŸ‹αž‘αžΈαž€αž“αŸ’αž›αŸ‚αž„ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαŸ–

  1. αž”αž“αŸ’αžαŸ‚αž˜αž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹ JVM αž‘αŸ… JMeter β€œlauncherβ€αŸ–
    -Dfile.encoding=UTF-8
  2. αž”αž“αŸ’αžαŸ‚αž˜ JSR223 PostProcessor αž‘αŸ…αž€αžΆαž“αŸ‹αž’αžαž·αžαž·αž‡αž“αžŠαŸ‚αž›αž˜αžΆαž“αž”αž“αŸ’αž‘αžΆαžαŸ‹ groovy:
    prev.setDataEncoding("UTF-8")

αž•αŸ’αž‰αžΎαž’αžαŸ’αžαž”αž‘

αž‡αž˜αŸ’αžšαžΎαžŸαžαŸ’αž‡αž·αž›αž”αŸ†αž•αž»αžαŸ” αžŸαŸαž€αŸ’αžαž·αžŸαž˜β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αž”αŸ†αž”αžΆαžαŸ‹β€‹αž€αŸ†αž αž»αžŸβ€‹αž€αžΆαžšβ€‹αž’αŸ’αžœαžΎβ€‹αžαŸαžŸαŸ’αžβ€‹αžŠαŸ‚αž›β€‹αžŸαžšαžŸαŸαžšβ€‹αžαŸ’αž˜αžΈαŸ—αŸ” αž¬αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž•αŸ’αž‰αžΎαž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž’αŸ’αžœαžΈαž˜αž½αž™αžαžΌαž…αŸ” αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‡αž˜αŸ’αžšαžΎαžŸ αž”αŸ’αžšαž—αž–αžŸαžΆαžš - Textarea αž αžΎαž™αžŠαžΆαž€αŸ‹αžαž½αž“αŸƒαžŸαžΆαžšαž€αŸ’αž“αž»αž„αž”αŸ’αž›αž»αž€αž’αžαŸ’αžαž”αž‘αŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž•αŸ’αž‘αŸαžšαž―αž€αžŸαžΆαžš

αž‡αž˜αŸ’αžšαžΎαžŸαž‘αžΌαž‘αŸ…αž”αŸ†αž•αž»αžαŸ” αžŸαžΆαž€αžŸαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžŽαžΆαžšαžΈαž™αŸ‰αžΌαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αŸ” αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‡αž˜αŸ’αžšαžΎαžŸ αž”αŸ’αžšαž—αž–αžŸαžΆαžš - αž–αžΈαž―αž€αžŸαžΆαžš αž“αž·αž„αž…αž„αŸ’αž’αž»αž›αž”αž„αŸ’αž αžΆαž‰αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αžŸαžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžœαžΆαž› αž―αž€αžŸαžΆαžš - αžˆαŸ’αž˜αŸ„αŸ‡αž―αž€αžŸαžΆαžšαŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž€αžΆαžšαž•αŸ’αž‘αŸαžšαž―αž€αžŸαžΆαžšαž‘αŸ…αžœαžΆαž›αž’αžαŸ’αžαž”αž‘

αž‡αž˜αŸ’αžšαžΎαžŸαž…αž˜αŸ’αžšαž»αŸ‡αž”αŸ†αž•αž»αžαŸ” αžŸαžΆαž€αžŸαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžŽαžΆαžšαžΈαž™αŸ‰αžΌαž—αžΆαž‚αž…αŸ’αžšαžΎαž“ + αž’αžΆαž…αž”αŸ’αžšαžΎαž€αŸ’αž“αž»αž„ JMS Point-to-Point αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαž•αŸ’αž‰αžΎαž‘αžΈαž–αžΈαžšαŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž’αžΆαžšαŸαž”αŸƒ

αž‡αž˜αŸ’αžšαžΎαžŸαž–αž·αž”αžΆαž€αž”αŸ†αž•αž»αžαŸ” αžŸαŸαž€αŸ’αžαž·αžŸαž˜β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž€αžΆαžšβ€‹αž–αž·αž“αž·αžαŸ’αž™β€‹αž˜αžΎαž›β€‹αž€αžΆαžšβ€‹αž”αž‰αŸ’αž‡αžΌαž“β€‹αžŸαŸ†αžŽαžΎβ€‹αžŠαŸ‚αž›β€‹αž˜αžΆαž“β€‹αž—αžΆαž–β€‹αžαŸ’αžšαžΉαž˜β€‹αžαŸ’αžšαžΌαžœβ€‹αž…αž»αŸ‡β€‹αž€αŸ’αžšαŸ„αž˜β€‹αž‘αŸ…β€‹αž”αŸƒ αžŠαŸ„αž™β€‹αž‚αŸ’αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αž”αž„αŸ’αžαžΌαž…β€‹αž‘αŸ’αžšαž„αŸ‹αž‘αŸ’αžšαžΆαž™ SMS αž“αž·αž„β€‹αžšαŸ†αžαžΆαž“αŸ” αž’αŸ’αž“αž€αž“αžΉαž„αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ 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();

αž αžΎαž™αž€αž»αŸ†αž—αŸ’αž›αŸαž…αž”αž“αŸ’αžαŸ‚αž˜αž•αŸ’αž›αžΌαžœαž‘αŸ…αž€αžΆαž“αŸ‹αž―αž€αžŸαžΆαžšαž€αŸ’αž“αž»αž„ PublisherαŸ–

αž‡αž½αžš αž“αž·αž„ JMeterαŸ– αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž’αžαž·αžαž·αž‡αž“

αž“αž·αž„αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž•αž„αžŠαŸ‚αžšαž“αŸ…αž€αŸ’αž“αž»αž„ JSR223 Assertion αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αžαž·αžαž·αž‡αž“ - αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž”αŸƒαž”αŸ’αžšαž—αž–αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž’αŸ’αž“αž€αžŠαŸ‚αž›αž˜αž€αžŠαž›αŸ‹αž€αŸ’αž“αž»αž„αž‡αž½αžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αž‘αž½αž›:

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

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹